我用的是JFINAL框架··jsp页面的使用multipart/form-data 后台用UploadFile file = getFile(),获取文件
结果就是一直Posted content type isn't multipart/form-data·报错
下面是代码js
function importExcel(){
var fileName= $('#uploadExcel').filebox('getValue');
alert(fileName);
if(fileName==""){
$.messager.alert('提示','请选择上传文件!','info');
}else{
//对文件格式进行校验
var d1=/\.[^\.]+$/.exec(fileName);
if(d1==".xls"){
$('#fm').form('submit', {
url: "PrimaryCustomer/importExcel",
fileName: fileName,
});
$.messager.alert('提示','操作成功!','info') ,
}
else{
$.messager.alert('提示','请选择xls格式文件!','info');
$('#uploadExcel').filebox('setValue','');
}
}
}
jsp代码
<form id="questionTypesManage" method="post" enctype="multipart/form-data" class="pageForm required-validate" >
选择文件: <input id="uploadExcel" name="uploadExcel" class="easyui-filebox" style="width: 200px" data-options="prompt:'请选择文件...'">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="importExcel()">导入Excel</a>
</form>
后台代码
public void importExcel() {
System.out.println("importyExcel");
// 获取文件
UploadFile file = getFile("fileName");
String path = file.getSaveDirectory() + file.getFileName();
// 处理导入数据
{
List<Map<Integer, String>> list = dealDataByPath(path); // 分析EXCEL数据
for(Map<Integer,String> map:list) { // 遍历取出的数据,并保存
PrimaryCustomerModel m = new PrimaryCustomerModel();
m.put("companyTaxNo", map.get(0));
m.put("companyName", map.get(1));
m.put("legalName", map.get(2));
m.put("legalTel",map.get(4));
m.put("userId",map.get(6));
m.save();
}
System.out.println(list);
}
// 返回结果
setAttr("msg", "导入成功!");
}
报错
Caused by: java.io.IOException: Posted content type isn't multipart/form-data
at com.oreilly.servlet.multipart.MultipartParser.<init>(MultipartParser.java:166)
at com.oreilly.servlet.MultipartRequest.<init>(MultipartRequest.java:222)
at com.jfinal.upload.MultipartRequest.wrapMultipartRequest(MultipartRequest.java:101)
... 34 more
还有我的easyui-filebox的取值一直是C:\fakepath\XXXX.xls不管是D盘还是F盘的路径都是这个···
(我一直觉的是路径的问题··但是我直接写正确的路径还是报上门的错误)
求大神解答···急求
------解决思路----------------------
记得结贴,你得结贴率太低,大家来是交流经验的顺便拿点分,你老不结贴就没人愿意回你贴了。