在本地windows下開發測試文件上傳
使用com.jfinal.cos進行multipart/form-data請求數據格式的文件上傳解析
import com.jfinal.upload.UploadFile; 。。。 List<UploadFile> upFile = this.getFiles(savePath);
我設置的savePath="D:/home/upload"
預想的情況會默認將文件上傳到該路徑下
java.lang.RuntimeException: Directory D:\WorkSpaces\wechat_dk\src\main\webapp\upload\D:/home/upload/ not exists and can not create directory.
at com.jfinal.upload.MultipartRequest.wrapMultipartRequest(MultipartRequest.java:95)
正常情況是發生報錯。
調試發現,源碼內部有一個BaseUploadPath變量作為文件上傳的根路徑。然后一getFiles(savePath) savePath路徑為相對路徑
參考鏈接
http://www.jfinal.com/feedback/914
jfinal 2.2 和3.0 getFile() 底層 MultipartRequest 類 反饋問題
解決方法
在JFinalConfig配置文件中,設置上傳文件根路徑為/
@Override public void configConstant(Constants me) {
... me.setBaseUploadPath("/");
... }
然后就可以隨意設置變量savePath的根路徑了。可以使用D:/xxx這種形式的根路徑