jfinal文件上传,Controller中不能获取

飞贼无影 发布于 2016/07/09 07:15
阅读 379
收藏 0

@JFinal 你好,想跟你请教个问题:前台提交的文件在后台接收不到,看了一下在MultipartRequest就么有获取到,而且文件也么有上传到服务器上,但是其他参数都可以接收到,部署环境为tomcat,请帮忙看看,谢谢!

前台JSP代码:

<form id="fileupload" action="./import/upload" method="post"
enctype="multipart/form-data" class="form-horizontal">


<div class="box-body">


<div class="col-md-6">
<div class="form-group">
<label class="col-sm-3 control-label">选择文件</label> <input
type="file">
</div>
</div>


<div class="col-md-6">
<div class="form-group">
<label class="col-sm-3 control-label">User</label> <input
name="user">
</div>
</div>

<div class="box-footer">
<div class="col-md-6">
<button type="submit" class="btn btn-primary pull-right">Submit</button>
</div>
</div>
</div>
</form>

controller脚本:getfiles每次取得都是null,而且dbug在MultipartRequest中也么有获取到文件

public void upload(){
File filetemp=null;
List<SharesImportMain> list;
if(getFiles().size()>0) {
for (UploadFile file:getFiles()){
filetemp=file.getFile();
file.getOriginalFileName();
Model basemodel=new SharesImportMain();
String fileName=filetemp.getPath();
ToolImportExcel importexcel=new ToolImportExcel();
list=importexcel.importExcel(filetemp,basemodel);
for(SharesImportMain model:list ){
Timestamp currentTime=new Timestamp(System.currentTimeMillis());
model.setCreateBy("System");
if(Db.findById("shares","shares_code,trade_date",model.getSharesCode(),model.getTradeDate())==null){
model.save();
}else{
Record record=model.toRecord();
Db.update("shares","shares_code,trade_date", record);
}
}
}

加载中
1
飞贼无影
问题解决了,在input上面加了name属性后可以获取到文件了。
0
x
xiyou
你的表单上传一个文件,应该用getFile()吧。
0
飞贼无影
之前是有加multiple属性的,由于获取不到所以去掉了。使用getfile()也取不到。而且文件也没有上传到服务器,cos应该是先将文件上传到服务器再做处理的吧。
0
JFinal
JFinal
    浏览器按一下 F12 打开调试工具,看上传请求有没有被做 302 重定向,具体原因见这篇问答: http://www.oschina.net/question/186435_245225
0
欣儿
欣儿
表单的action可以用你写的链接吗?
0
飞贼无影
谢谢,各位的帮助
返回顶部
顶部