
<%
if (MultipartFormDataRequest.isMultipartFormData(request))
{
// Uses MultipartFormDataRequest to parse the HTTP request.
MultipartFormDataRequest mrequest = new MultipartFormDataRequest(request);
String todo = mrequest.getParameter("todo");
if ( (todo != null) && (todo.equalsIgnoreCase("upload")) )
{
Hashtable files = mrequest.getFiles();
if ( (files != null) || (!files.isEmpty()) )
{
UploadFile file = (UploadFile) files.get("fileUpload");
//Extra check added to avoid null files
if ((file.getFileName()!=null) && (file.getFileSize()> 0)) {
//The above line is for storing directly without upload bean
if (file.getFileSize() > 414572) {
throw new Exception("File size limit exceeded");
}
//must comment this line of not inserting resume in database
//byte[] filecontents = file.getData();
values[1] =mrequest.getParameter("fname");
values[2] = mrequest.getParameter("mname");
values[3] = mrequest.getParameter("lname");
values[4] = mrequest.getParameter("qual");
values[5] = mrequest.getParameter("spec");
values[6] = mrequest.getParameter("sex");
values[7]=mrequest.getParameter("pskill");
values[8] = mrequest.getParameter("country");
values[9]= mrequest.getParameter("remarks");
values[10]= mrequest.getParameter("exp");
values[11]=mrequest.getParameter("dob");
values[12]=mrequest.getParameter("email");
values[13] = file.getFileName();
//cut the numeric part for email notification
qual = values[4].substring(values[4].indexOf("|")+1);
spec = values[5].substring(values[5].indexOf("|")+1);
country = values[8].substring(values[8].indexOf("|")+1);
//cut the string part for database insertion
values[4]=values[4].substring(0,values[4].indexOf("|"));
values[5]=values[5].substring(0,values[5].indexOf("|"));
values[8]=values[8].substring(0,values[8].indexOf("|"));
String s = "First Name: "+values[1] +"\n" +
"Middle Name: "+ values[2]+"\n" +
"Last Name: "+ values[3]+"\n" +
"Gender: "+ values[6]+"\n" +
"Date of Birth: "+ values[11]+"\n" +
"Qualification: "+ qual+"\n" +
"Specialization: "+spec +"\n" +
"Experience Start Date: "+values[10] +"\n" +
"Nationality: "+ country+"\n" +
"Jobs Interested in: "+values[9] +"\n" +
"Skill Set: "+values[7] +"\n" +
"Email: "+ values[12]+"\n" ;
fullname = values[1] +" "+values[2]+" "+values[3];
email = values[12];
//MainBean settings
mailBean.setUsername("jobs");
mailBean.setPassword("jobs");
mailBean.setSubject("Resume of "+fullname+" ( "+email+ " )");
mailBean.setMessage(s);
//Store resume in folder
upBean.store(mrequest, "fileUpload");
//Store in database
try {
if(con!=null )
{
values[0]=dbutil.getCancd(con); //this is for can_cd
int i= dbutil.insertCanRecord(con,values);
con.commit();
// insert child record directly without upload bean
/* if (i==1) {
PreparedStatement pstmt = con.prepareStatement("INSERT INTO resume_mstr(can_cd,resume,filename) VALUES( ?, ?, ? )");
pstmt.setString(1, values[0]);
//convert byte array into input stream and insert blob
int length = filecontents.length;
pstmt.setBinaryStream(2, new ByteArrayInputStream(filecontents, 0, length), length );
pstmt.setString(3, values[13]);
pstmt.executeUpdate();
con.commit();
}*/
System.out.println("Stored in database successfully."+values[0]);
}
}
catch(Exception e) { throw new Exception(e.getMessage());}
response.sendRedirect("success.jsp?s="+fullname);
}
else
{
msg=getWrong("Dear "+fullname.toUpperCase()+",
Your resume is not Uploaded..Please try again..
You can also send it to jobs@sraco.com.sa");
}
}
else
{
msg=getWrong("Invalid Request..Please try again..
You can also send your resume to jobs@sraco.com.sa");
// out.println("
todo="+todo);
}
}
}
%>
Post Resume
* indicated fields are mandatory.
For resumes of size more than 300KB, please send directly to jobs@sraco.com.sa