Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring MVC-多部分表单数据_Java_Spring_Jsp_Spring Mvc_Multipartform Data - Fatal编程技术网

Java Spring MVC-多部分表单数据

Java Spring MVC-多部分表单数据,java,spring,jsp,spring-mvc,multipartform-data,Java,Spring,Jsp,Spring Mvc,Multipartform Data,我得到了这个jsp文件: <form:form class="main-section" modelAttribute="demandeForm" commandName="demandeForm" name="demandeForm" method="post" enctype="multipart/form-data;charset=UTF-8" action="/validate.do?valider=valider"> <!-- Some input text --

我得到了这个jsp文件:

<form:form class="main-section" modelAttribute="demandeForm" commandName="demandeForm" 
name="demandeForm" method="post" enctype="multipart/form-data;charset=UTF-8" action="/validate.do?valider=valider">

<!-- Some input text -->

<ul>
   <li>
      <input type="file" name="file" >
   </li>
   <li>
      <input type="file" name="file" >
   </li>
   <li>
      <input type="file" name="file" >
   </li>
</ul>
和我的控制器:

@RequestMapping(method = RequestMethod.POST, params = "valider")
public String valider(@Valid final DemandeForm pForm, final BindingResult pResult, final Model pModel, final HttpServletRequest pRequest) {

    // do things

    if (pResult.hasErrors()) {
        return MY_VUE;
    }

    // do things

}
pResult
有绑定错误,下面是错误:

Failed to convert property value of type java.lang.String[] 
to required type org.springframework.web.multipart.MultipartFile[] 
for property file; nested exception is java.lang.IllegalStateException: 
Cannot convert value of type [java.lang.String] to required type 
[org.springframework.web.multipart.MultipartFile] for property file[0]: 
no matching editors or conversion strategy found 
自从我在enctype值上添加了
charse=UTF-8
之后,就出现了错误。我需要这个,因为我有这个口音和UTF-8字符的文件


如何处理此问题?

您可以将控制器参数设置为

@RequestParam("file") MultipartFile file
然后您可以获得文件名、大小等。。。像

file.getOriginalFilename()
您是否尝试过:

<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <property name="defaultEncoding"><value>utf-8</value></property>
</bean>
以你的形式

<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <property name="defaultEncoding"><value>utf-8</value></property>
</bean>
enctype="multipart/form-data;charset=UTF-8"