2017-04-06 5 views
0

Ich sende eine Datei mit jQuery FormData an den Tomcat-Server. Die Datei wird erfolgreich auf dem Server empfangen, aber jeder andere Wert, den ich mit der Datei sende, wird nicht empfangen. Für die Verarbeitung des Datei-Uploads verwende ich http://commons.apache.org/proper/commons-fileupload/ und http://commons.apache.org/io/. Es wird irgendwie meine Datei bekommen. Aber wenn ichjquery FormData funktioniert nicht mit Servlet

request.getParameter("file") 

im Servlet für den folgenden Code zu schreiben, gibt es null. Selbst wenn im Request-Objekt kein Parameter angezeigt wird. Ich verstehe nicht, wie es die Datei dann bekommt. Kann mir jemand helfen, das zu lösen?

$('#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 !"); 
     } 
    }); 
}); 

Ich benutze Firebug, um die Anfragen zu verfolgen. Es zeigt, dass beide Felder an den Server gesendet werden. Unten ist der Schnappschuss für dasselbe: enter image description here

Antwort

0

Es gab einen Fehler in meinem Backend-Code. Der obige Code funktioniert perfekt. Entschuldigung für den falschen Beitrag!