jsf文件上傳

JSF2.0雖然添加了很多新特性,但是還是沒有官方的對上傳的支持。直接使用

<h:form enctype="multipart/form-data" >

</h:form>

是不行的。因爲multipart/form-data類型的request是解析不了的。

解決方法可以使用filter對request進行包裝(原request似乎是不能更改的,所以藉助包裝),在解析request是可以藉助apache的commons-fileupload組件。

Myfaces剛好給出了這個解決方案的實現:

MultipartFilter+MultipartRequestWrapper(Use commons-fileupload).

 

原來是打包在一個myfaces-extensions.jar中,現在找不到官方的下載,不過在Tomahawk包裏可以找到(org.apache.myfaces.webapp.filter.*,MultipartFilter似乎都弄到ExtensionsFilter裏了)。

 

個人覺得舊版的源代碼挺參考價值的,貼出來分享下。

 MultipartRequestWrapper:

 MultipartFilter:

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章