jQuery FormDataを使用して1つのファイルをTomcatサーバーに送信しています。ファイルはサーバー上で正常に受信されていますが、ファイルとともに送信される他の値は受信されていません。ファイルのアップロードを処理するために、私はhttp://commons.apache.org/proper/commons-fileupload/とhttp://commons.apache.org/io/を使用しています。それは何とか私のファイルを取得しています。しかし、書いたときに、以下のコードのサーブレットに、jquery FormDataがServletと連携していません
request.getParameter("file")
と書くと、nullが返されます。要求オブジェクトにもパラメータは表示されません。私はそれがファイルをどのように取得するのか分かりません。誰も私がこれを解決するのを助けることができますか?
$('#uploadCourseDetail').click(function() {
var form_data = new FormData();
if (!($('#courseDetails').prop('files')[0] == undefined)) {
var file_data = $('#courseDetails').prop('files')[0];
form_data.append('file', 'examdetail');
form_data.append('courseDetails', file_data);
}
$.ajax({
url: 'Exam_TimeTable_Scheduler_bySlots_Web_Project/FileUploadServlet',
type: 'POST',
contentType: false,
processData: false,
cache: false,
data: form_data,
success: function(data) {
alert("File Uploaded Successfully !");
}
});
});
私はfirebugを使用してリクエストを追跡します。両方のフィールドがサーバーに送信されていることを示します。以下は同じもののスナップショットです: