我試圖使用FileReference類上傳文件。文件> 2MB全部正常工作,但文件< 2MB導致此錯誤:「java.io.IOException:損壞的表單數據:過早結束」損壞的表單數據:過早結束(已解決)
在服務器上,我使用com.oreilly.servlet包來處理請求。
我已經多次使用這個軟件包來成功處理來自flex的文件上傳,但由於某種原因,現在我遇到了這個問題。
任何想法?
下面是更多的一些信息堆棧跟蹤:
java.io.IOException: Corrupt form data: premature ending
at com.oreilly.servlet.multipart.MultipartParser.<init>(MultipartParser.java:205)
at com.oreilly.servlet.MultipartRequest.<init>(MultipartRequest.java:222)
at com.oreilly.servlet.MultipartRequest.<init>(MultipartRequest.java:173)
at com.mydomain.FileUploadServlet.doPost(FileUploadServlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:414)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
更新:
似乎有使用com.orielly.servlet.MultipartRequest時存在錯誤類和org.apache.struts2.dispatcher.ActionContextCleanUp過濾器一起使用。這是導致小文件上傳失敗的原因。
如果你已經找到了自己問題的答案,你應該回答答案並接受它,而不是改變標題。 – SingleNegationElimination 2009-06-15 23:24:40