我有一个表单,用户可以使用它将文件上传到本地驱动器,还可以将一些数据保存到数据库中。但是出现了这个错误消息,我想知道如何处理它。
HTTP Status 400 - The request sent by the client was syntactically incorrect.
控制器
@RequestMapping(value = "/main/user/setter/addpage", method =
RequestMethod.POST, params = "save")
public String saveProcess(@ModelAttribute("module") Module module,
@RequestParam("userId") Integer userId,
@RequestParam("name") String name,
@RequestParam("file") MultipartFile file,
BindingResult result, HttpSession session) {
if (result.hasErrors()) {
return "redirect:/main/user/setter/settingpage";
}
else
if(module != null){
try {
MultipartFile filea = module.getFileData();
InputStream inputStream = null;
OutputStream outputStream = null;
if (filea.getSize() > 0) {
inputStream = filea.getInputStream();
outputStream = new FileOutputStream("C:\\Test\\"
+ filea.getOriginalFilename());
System.out.println("Uploaded File Name");
System.out.println(filea.getOriginalFilename());
int readBytes = 0;
byte[] buffer = new byte[8192];
while ((readBytes = inputStream.read(buffer, 0, 8192)) !=
-1) {
outputStream.write(buffer, 0, readBytes);
}
outputStream.close();
inputStream.close();
session.setAttribute("success", "File Uploaded");
session.setAttribute("uploadFile", "C:\\Test\\"
+ filea.getOriginalFilename());
}
} catch (Exception e) {
e.printStackTrace();
}
}
// Delegate to service
moduleService.add(userId, module);
return "redirect:/main/user/setter/settingpage";
}
形式本身
<c:url var="processUrl" value="/main/user/setter/addpage?userId=2" />
<form:form modelAttribute="module" method="POST" action="${processUrl}" name="module"
enctype="multipart/form-data">
<form:label path="fileName">Document Title:</form:label>
<form:input path="fileName" name="name"/><br/>
<form:label path="documentPath">Coursework Sample:</form:label>
<form:input path="documentPath" type="file" name="file" id="file" size="43.9"/><br/>
<form:label path="liveDate">Live Date:</form:label>
<form:input path="liveDate"/><br/>
<input type="submit" name="save" value="Save" id="save"/>
<input type="submit" name="send" value="Send" id="send"/>
</form:form>
我试图先保存表单,我将使用单独的方法发送它。
错误HTTP Status 400-客户端发送的请求在语法上不正确
可以来自上下文(servlet context.xml
)中缺少的multipartResolver
)
`<beans:bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />`
有关更多信息,请参阅SpringMVC FileUpload的回复-客户端发送的请求在语法上不正确
您的方法声明如下:
public String saveProcess(@ModelAttribute("module") Module module,
@RequestParam("userId") Integer userId,
@RequestParam("name") String name,
@RequestParam("file") MultipartFile file,
BindingResult result, HttpSession session) ...
假设您正在尝试将BindingResult
应用到Module
实例,您需要更改方法定义,使BindingResult
紧跟在Module
实例之后。
public String saveProcess(@ModelAttribute("module") Module module,
BindingResult result,
@RequestParam("userId") Integer userId,
@RequestParam("name") String name,
@RequestParam("file") MultipartFile file,
HttpSession session) ...
有关更多详细信息,请参阅参考
错误或BindingResult参数必须跟随立即绑定的模型对象,因为方法签名可能有多个模型对象,Spring将为每个模型对象创建单独的BindingResult实例[…]
看这里。
这是我的控制器 我的豆子是 当我给出的名称介于5到45个字符之间时,表单将被验证。但当表单未被验证时,我会收到400状态错误报告。我不知道为什么我会出错。这里需要帮助吗
这里是LocationSearchMetaData.java 我的控制器 我的客户要求是这样的 下面是实际数据请求 获取时出错I:
我在这个问题上花了很多时间,但无法解决它。请帮忙!当我从JSP提交表单时,我得到了这个错误。我的代码: 和我的控制器代码: }
我已经创建了一个MVC结构来为患者保存一个新的记录,我不断收到404错误。这是我的密码, 病人JAVA 控制器类 Dao实现类 调度servlet 耐心形成。jsp web.xml 我可以获取列表,但当我尝试从PatientForm保存患者详细信息时。jsp时,表单未将其提交给控制器,并给出400状态错误
在我的jsp页面中有两个表单,每个表单都有一个提交按钮。。。我想将表单1发送到我的控制器,该控制器由两个图像和几个表单字段组成。 控制器。JAVA 学校Details.jsp
我希望在调试这个问题时得到一些帮助。如果我将以下JSON发送到后端,它将正常工作: 但是,如果我现在发送以下内容: 我得到了上面的错误。在我的后端代码中,我有以下代码: API 方法签名如下所示: 我认为我遇到的问题是JSON不能被解析为ZonedDateTime。有人对以下两个问题有什么建议吗?( json字符串格式ZonedDateTime自动接受什么时间,( 2)如何创建DTO来解析zone