gpt4 book ai didi

java - Spring MVC - 多部分表单数据

转载 作者:行者123 更新时间:2023-11-30 10:56:01 24 4
gpt4 key购买 nike

我得到了这个 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>

这是我的表单类:

public class DemandeForm {

private MultipartFile[] file;

public MultipartFile[] getFile() {
return file;
}

public void setFile(final MultipartFile[] pFile) {
this.file = pFile;
}
}

还有我的 Controller :

@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绑定(bind)错误,错误如下:

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 字符的文件。

我该如何处理?

最佳答案

你试过吗:

<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"

在你的表单中

关于java - Spring MVC - 多部分表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33144495/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com