I have this following code
String contentTP = (String)e.nextElement();
logger.info("contentTP : " + contentTP);
if (contentTP != null && contentTP.startsWith("multipart/form-data")) {
multi = new MultipartRequest(request, 1000 * 1024 * 1024); // 1GB
parameters = multi.getParameters();
}
String action = (String)parameters.get("formname");
String BaseURL = (String)parameters.get("BaseURL");
logger.info("BaseURL in MailSend servlet: " + BaseURL);
String firstName = (String)parameters.get("firstName");
String lastName = (String)parameters.get("lastName");
String tid = (String)parameters.get("TID");
String from = (String)parameters.get("emailID");
String subject = (String)parameters.get("categoryvalue");
logger.info("parameter" + parameters);
logger.info("firstName : " + (String)parameters.get("firstname"));
logger.info("email : " + (String)parameters.get("emailID"));
logger.info("Subject : " + (String)parameters.get("categoryvalue"));
The flow is that there is a request form which is filled by the user and then data is entered in Database and mails are sent with the same data. I am getting a strange issue in it which is some of the values like subject in the parameter object is missing at times. Below are the log entries for success scenario and failure scenario for the entries of parameter hashtable. Success Scenario
2014-01-21 02:11:26,335 INFO servlets.MailSend parameter{m_technicaldetails=testing..., tsaa12=, tsaa11=, tsaa10=, actiondate5=, ntid=T-ID/S-ID:, actiondate4=, actiondate3=, actiondate2=, actiondate1=, tsvalue=, rsemail=E-mail:, message=testing ....., akamaiq3value=, da2=, da1=, vq3value=, emailID=SR1215@chrysler.com, notedate5=, status=, pnumber2=4324234, notedate4=, ftpdetailstext=FTP Details for the Assets, pnumber1=342, notedate3=, da3value=, notedate2=, vq5date=, notedate1=, vq7value=, TID=t3014sr, techq3value=, user1=User1:, formname=requestform, categoryvalue=Mobile, m_mobile=Support, itemtonotefull=Request Details - Additional Items to note in the monthly KPM Report, ftpdetails=, sitechangefull=Site Changes(Navigation, Folder Structure, Addition/Removal of Content), teamsitevalue=, category=Mobile, rsuser1=User1:, dnsvalue=, birthday=Birth date(MM-DD):, vq2other=, m_mobileq4value=, othervalue=, akamaiq6=, change5=, change4=, change3=, change2=, tsq7=Provide the estimated date when you are planning to start working with the templates and launching your site, change1=, tsq3=Jeep:, tsq2=Dodge:, tsq1=Chrysler:, dateofchange=Date of Change, rslastname=Last Name:, akamaiq4value=, vpnvalue=, rtvalue=, da4value=, itemtonote=Item to Note, rsaa9=, rsaa8=, rsaa7=, rsaa6=, rsaa5=, rsaa4=, vq8value=, rsaa3=, rsaa2=, rsaa1=, priority=High, m_mobileq4=, m_mobileq3=Any other technical issues, nsfirstname=First Name:, tspnumber=Phone Num:, m_mobileq1value=, rsaa12=, rsaa11=, rsaa10=, ts2=Specify the user names that require access to manage content in TeamSite:, ts1=Domain name/URL to be used for each Brand. Note: URLs must be already purchased, rs2=Specify the user names that require access to manage content in TeamSite:, firstName=Sanket, akamaiq1value=, lastname=Last Name:, vq1value=, tsa3=, tsa2=, country=India, tsa1=, vq5value=, date=Date, lastName=Roy, techq4=Is your site on Akamai?, techq2=Is your site under Chrysler infrastructure? This means DNS (Domain Name Server) is controlled by Chrysler., note5=, note4=, note3=, note2=, note1=, vp4=Have you updated the Anti Virus? (Definitions must be less than 14 days old), vp3=Were changes made to the network you are using in the last few days?, actiontakenfull=Actions taken to increase traffic, tsa13=, vp2=Current Operation System, m_mobileq2value=, vp1=Current remote access system to connect to Chrysler Network, rsfirstname=First Name:, vq10value=, priorityvalue=High, akamaioptionvalue=, templatevalue=, assetsvalue=, taother=, rspnumber=Phone Num:, changedate5=, dq4=When you try to deploy content in UAT/Live environment from Team Site, are you receiving the error message 'Promotion Block Check Failed?', changedate4=, dq3=Are you trying to use the refresh workarea to conduct deployments?, changedate3=, dq2=When was the last time you deployed content and it failed, changedate2=, action5=, dq1=Provide the step where you are facing those issues, changedate1=, action4=, action3=, action2=, action1=, tsaa9=, tsaa8=, tsaa7=, sitechange=Site Change, tsaa6=, tsaa5=, tsaa4=, tsaa3=, tsaa2=, vq6date=, tsaa1=, vq2value=, uploadfiles=[{uploadedfilename=Mobile_Category_New_Enhancement.docx, filesize=1043741, partInput=java.io.ByteArrayInputStream@21c321c3}], BaseURL=, vq6value=, m_mobileoptionvalue=Support, cclist=sanket.roy@tcs.com, actiontaken=Action Taken, rstid=T-ID/S-ID:, rcvalue=, email=E-mail:, m_mobileq3value=Unable to view content on TEST site|Facing problem in deleting existing files in the workarea|Help locking or unlocking files within a workarea|Not able to see changes in test environment after submitting files|Any other technical issues, deploymentvalue=, trainingvalue=, rsbirthday=Birth date(MM-DD):}
FAilure scenario
parameter{user1=User1:, pnumber2=3123123, cclist=sanket.roy@tcs.com, pnumber1=3123, attachement=; filename="Mobile_Category_New_Enhancement.docx"
Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document
PK, tsaa9=, tsaa8=, tsaa7=, tsaa6=, tsaa5=, tsaa4=, tsaa3=, tsaa2=, tsaa1=, birthday=Birth date(MM-DD):, TID=t3014sr, email=E-mail:, m_mobile=Support, vq10value=, date=Date, dateofchange=Date of Change, change5=, change4=, change3=, change2=, dq4=When you try to deploy content in UAT/Live environment from Team Site, are you receiving the error message 'Promotion Block Check Failed?', change1=, dq3=Are you trying to use the refresh workarea to conduct deployments?, dq2=When was the last time you deployed content and it failed, firstName=Sanket, dq1=Provide the step where you are facing those issues, taother=, rsbirthday=Birth date(MM-DD):, sitechangefull=Site Changes(Navigation, Folder Structure, Addition/Removal of Content), rstid=T-ID/S-ID:, message=testing , akamaiq6=, status=, rsaa12=, action5=, nsfirstname=First Name:, rsaa11=, action4=, rsaa10=, action3=, action2=, tsa3=, action1=, tsa2=, tsa1=, ts2=Specify the user names that require access to manage content in TeamSite:, ts1=Domain name/URL to be used for each Brand. Note: URLs must be already purchased, rsaa9=, rsaa8=, rsaa7=, rsaa6=, rsaa5=, rsaa4=, rsaa3=, rsaa2=, rsaa1=, itemtonotefull=Request Details - Additional Items to note in the monthly KPM Report, rs2=Specify the user names that require access to manage content in TeamSite:, ftpdetailstext=FTP Details for the Assets, actiontakenfull=Actions taken to increase traffic, vq2other=, vq6date=, priority=Medium, changedate5=, changedate4=, changedate3=, changedate2=, changedate1=, rsuser1=User1:, ntid=T-ID/S-ID:, country=India, tsaa12=, tsaa11=, tsaa10=, m_technicaldetails=testing, actiontaken=Action Taken, ftpdetails=, lastname=Last Name:, vq5date=, itemtonote=Item to Note, rsemail=E-mail:, actiondate5=, techq4=Is your site on Akamai?, actiondate4=, actiondate3=, techq2=Is your site under Chrysler infrastructure? This means DNS (Domain Name Server) is controlled by Chrysler., actiondate2=, tsq7=Provide the estimated date when you are planning to start working with the templates and launching your site, actiondate1=, m_mobileq4=, m_mobileq3=Any other technical issues, sitechange=Site Change, tsq3=Jeep:, emailID=SR1215@chrysler.com, tsq2=Dodge:, tsq1=Chrysler:, notedate5=, notedate4=, notedate3=, vp4=Have you updated the Anti Virus? (Definitions must be less than 14 days old), notedate2=, vp3=Were changes made to the network you are using in the last few days?, notedate1=, vp2=Current Operation System, da2=, note5=, vp1=Current remote access system to connect to Chrysler Network, da1=, note4=, note3=, note2=, note1=, tsa13=, others=Others, lastName=Roy, rslastname=Last Name:, rsfirstname=First Name:, tspnumber=Phone Num:, rspnumber=Phone Num:, category=Mobile}
You can see that the categoryvalue field is not present in the second case. The values in the parameter variable is entered using js and passed using hidden variable from jsp to java file. Below is the function getCategory from js.
document.form1.categoryvalue.value = document.form1.category.value;
//document.form1.action="Category";
//document.form1.submit();
alert(document.form1.categoryvalue.value);
if (navigator.appName.indexOf("Microsoft") > -1) {
var canSee = 'block'
} else {
var canSee = 'table-row';
}
if (document.form1.categoryvalue.value == "Assets") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_training();
clear_technical();
clear_teamsite();
/*/anu
clear_newsettings();
//anuend*/
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = canSee;
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
document.getElementById('m_mobiletr').style.display = 'none';
} else if (document.form1.categoryvalue.value == "Templates") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
/*/anu
clear_newsettings();
//anuend*/
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = canSee;
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else if (document.form1.categoryvalue.value == "Training") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_technical();
clear_teamsite();
/*/anu
clear_newsettings();
//anuend*/
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_markettomarket();
clear_mobile();
document.form1.attachement.value = "";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = canSee;
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else if (document.form1.categoryvalue.value == "Technical") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_teamsite();
/*/anu
clear_newsettings();
//anuend*/
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = canSee;
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else if (document.form1.categoryvalue.value == "Teamsite") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
/*/anu
clear_newsettings();
//anuend*/
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = canSee;
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else if (document.form1.categoryvalue.value == "NewSettings") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
/*/anu
clear_newsettings();
//anuend*/
clear_kpmreport();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = canSee;
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else if (document.form1.categoryvalue.value == "KPM Request Form") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_markettomarket();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = canSee;
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = 'none';
document.getElementById('attachmenttr').style.display = 'none';
} else if (document.form1.categoryvalue.value == "Market to Market") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
clear_kpmreport();
clear_mobile();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = canSee;
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = 'none';
document.getElementById('attachmenttr').style.display = 'none';
} else if (document.form1.categoryvalue.value == "Mobile") {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
clear_newsettingts();
clear_newsettingrc();
clear_newsettingvp();
clear_newsettingother();
/*/anu
clear_newsettings();
//anuend*/
clear_kpmreport();
clear_markettomarket();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = canSee;
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
} else {
//anu 14/6
enableuser2();
enablersuser2();
enabletextbox();
get_vq2_value();
//anu2
get_vq5_value();
get_vq6_value();
//anu2
//anuend 14/6
clear_template();
clear_assets();
clear_training();
clear_technical();
clear_teamsite();
clear_kpmreport();
clear_markettomarket();
//document.form1.attachement.value="";
clearFileInputField();
document.form1.message.value = "";
document.getElementById('assesttr').style.display = 'none';
document.getElementById('trainingtr').style.display = 'none';
document.getElementById('templatetr').style.display = 'none';
document.getElementById('teamsitetr').style.display = 'none';
document.getElementById('newsettingstr').style.display = 'none';
document.getElementById('technicaltr').style.display = 'none';
document.getElementById('kpmreporttr').style.display = 'none';
document.getElementById('markettomarkettr').style.display = 'none';
document.getElementById('m_mobiletr').style.display = 'none';
document.getElementById('prioritytr').style.display = canSee;
document.getElementById('attachmenttr').style.display = canSee;
i have placed alert at the beginning and the end ensuring that the variable are passed to the java file . But in java file it is coming intermittently Please let me know if you have any clue what the issue might be. Tell if any further information need to be included. Thanks in advance