[英]HTTP Status 400 The request sent by the client was syntactically incorrect in Spring
[英]HTTP Status 400 - The request sent by the client was syntactically incorrect with spring
当我尝试提交“添加表单”时,我的HTTP状态为400,我也搜索了此问题,并且大多数解决方案都与controller和@RequestParameter一起考虑。
形式如下:
<form:form commandName="blog" id="newBlog" method="POST"
cssClass="form-horizontal" action="account">
<table class="k-widge">
<tr>
<th>Name:</th>
<td><form:input path="name" cssClass="k-textbox"
style="margin-top:3px; margin-bottom: 5px;" name="name"/></td>
</tr>
<tr>
<th>Url:</th>
<td><form:input path="url" cssClass="k-textbox"
style="margin-bottom: 5px;" name="url"/></td>
</tr>
<tr>
<th></th>
<td><input type="submit" value="Save" Class="k-button" id="saveBlog"
style="margin-bottom: 5px;"/></td>
</tr>
</table>
</form:form>
和控制器:
@RequestMapping(value="/account",method=RequestMethod.POST)
public String doAddBlog(@ModelAttribute("blog") Blog blog,Principal principal){
String name = principal.getName();
blogService.save(blog,name);
return "redirect:/account.html";
}
终于,我解决了这个问题。 问题是,当我提交表单时,该表单中以“帐户”形式存在的动作会附加到当前URL:
当前网址“ localhost:8080 / myapp / users”
当我提交表格时,它会像这样
“本地主机:8080 / MyApp的/用户/帐户”
并且该“ / users / account”在控制器类的请求映射中不存在。
因此,我要做的是在表单操作中添加“ / myapp / account”而不是“ account”。
谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.