2011-08-20 66 views
0

可能重複:
How to upload files in JSP/Servlet?處理文件上傳使用Servlet

我在與使用servlet文件上傳一些奇怪的問題。

我讀,我需要將以下屬性添加到我的表格: ENCTYPE =「的multipart/form-data的」

的事情是,當我加入這個,所有的POST數據不到達HttpServletRequest對象(包含從表單收集的所有數據的對象)。當我從表單中刪除「enctype」屬性時,一切似乎都正常,我可以看到用戶在表單中輸入的所有數據。

我在做什麼錯?如何成功地將「常規」表單數據和文件上傳結合起來?

+1

[如何在JSP/Servlet中上載文件?](http://stackoverflow.com/questions/2422468/how-to-upload-files-in-jsp-servlet/2424824#2424824)和http ://stackoverflow.com/questions/4840476/how-to-submit-jsp-page-with-encoding-multipart-form-data/4840512#4840512 – BalusC

回答

0

使用支持文件上傳的web框架(Stripes,Spring MVC等),或使用apache commons FileUpload來處理它們。由於我無法理解的原因,servlet API(3.0之前)本身不支持它們。

0

我強烈建議剛讀了上ApacheFileUpload http://commons.apache.org/fileupload/

老實說,它有很大的文檔,安裝非常簡單。或者,如果你正在運行Tomcat 7(我猜你不是),那麼它有MultipartForm數據。 commons API運行良好,有很多選項,並且允許您直接訪問這些流,而無需緩存到文件中(如果需要的話)。