2017-04-06 77 views
0

我使用jQuery FormData將一個文件發送到tomcat服務器。該文件正在服務器上成功接收,但沒有收到我用該文件發送的任何其他值。爲了處理文件上傳,我使用http://commons.apache.org/proper/commons-fileupload/http://commons.apache.org/io/。它以某種方式獲取我的文件。但是當我寫入jquery FormData不能使用Servlet

request.getParameter("file") 

在下面的代碼的servlet中,它返回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 !"); 
     } 
    }); 
}); 

我用螢火蟲來跟蹤請求。它顯示這兩個字段正在發送到服務器。下面是同樣的快照:enter image description here

回答

0

我的後端代碼有錯誤。以上代碼完美工作。真誠道歉的錯誤的職位!