![](/img/trans.png)
[英]Spring REST MultipartFile file is always null when do upload file
[英]null value in file upload by using MultipartFile in spring 2.5
我被困在某事上。 在Spring 2.5框架中,我想使用MultipartFile上传文件。 我有一个名为Dosya的类,其中包括MultipartFile multiDosya属性。 我的命令对象是dosya。 此外,将要上载的文件存储在数据库SQL Developer中的BLOB类型。 在jsp中,我尝试如下绑定此属性:
<spring:bind path="dosya.multiDosya">
<input class="file" type="file" name="yuklenecekDosya" id="yuklenecekDosya" />
</spring:bind>
在onSubmit中,
Dosya dosyaObjesi = (Dosya)command;
MultipartFile yuklenecekDosya = dosyaObjesi.getMultiDosya();
可以毫无问题地使用commandObject dosyaObjesi,但是,
dosyaObjesi.getMultiDosya()
尽管在jsp中选择了要上载的文件,但值仍为null。
在网上搜索后,我发现下面的这一行应添加到initBinder中。
binder.registerCustomEditor(byte[].class, new ByteArrayMultipartFileEditor());
但是,我的班级说没有此类ByteArrayMultipartFileEditor,但在spring-2.5.jar中可用。 我汇入
import org.springframework.web.multipart.*;
可以找出问题所在。 有人可以帮我吗
提前致谢。
您是否指定了表单加密类型(enctype =“ multipart / form-data”)? 有时可能是原因。
例如:
<form method="post" name="formName" action="action.htm" commandName="object" enctype="multipart/form-data">
我已经解决了问题。 一切正常,但是,在下面的代码中
<input class="file" type="file" name="yuklenecekDosya" id="yuklenecekDosya" />
属性名称必须为${status.expression}
。 也就是说,就是这样的name="${status.expression}"
。 如果仅给出name属性值,则绑定操作将正常工作。 感谢和问候,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.