![](/img/trans.png)
[英]Http status 400 -The request sent by the client was syntactically incorrect. Spring MVC
[英]HTTP Status 400 - The request sent by the client was syntactically incorrect. - within a Spring MVC web app using Hibernate
我希望有人可以幫我這個忙...我一直在看這個錯誤已有一段時間了。
我收到“ HTTP狀態400-客戶端發送的請求在語法上不正確”。 提交春季表格時出錯。
該錯誤與我的JSP spring表單中的以下代碼有關。
<form:input path="game_week_id"></form:input>
當我刪除此行代碼時,不會引發錯誤(但我當然想從輸入的表單值中設置game_week_id
)。 只是要注意game_week_id
實際上不是game_week_id
表的ID(主鍵)-而是我為該列指定的名稱。 該表的主鍵實際上是一個自動編號。
我想在Fixtures表中插入一行(基於用戶表單輸入),該表由Fixtures類控制。
我在想將game_week_id
表單字段綁定回該對象存在問題(或者可能是game_week_id
與底層數據庫列的綁定)。
任何方向或任何幫助將不勝感激(我容易些!-我知道這可能是我正在做的愚蠢的事情)
來自我的控制器,Fixture對象和JSP表單的代碼如下所示:
//CONTROLLER
@RequestMapping(value="/addFixtures", method=RequestMethod.POST)
public ModelAndView registerFixture(@ModelAttribute Fixture fixture, Map<String, Object> map1, HttpServletRequest request1)
{
String message;
System.out.println("Adding fixture..");
ModelAndView modelAndView = new ModelAndView();
System.out.println("Fixture: Game Week ID " + fixture.getGame_week_id());
System.out.println("Fixture: Game ID " + fixture.getGame_id());
fixtureService.addFixture(fixture);
modelAndView.setViewName("addFixtures");
message = "Fixture successfully added";
modelAndView.addObject("message", message);
return modelAndView;
}
治具類
@Entity
@Table(name = "fixtures")
public class Fixture implements java.io.Serializable {
private Integer id;
public Gameweek game_week_id;
private Integer game_id;
private PPTeam home_team;
private PPTeam away_team;
public Fixture(){
}
public Fixture(
Gameweek game_week_id,
Integer game_id,
PPTeam home_team, PPTeam away_team, PPTeam homeTeam) {
this.game_week_id = game_week_id;
this.game_id = game_id;
this.home_team = home_team;
this.away_team = away_team;
}
@Id
@GeneratedValue
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@ManyToOne(cascade = CascadeType.PERSIST)
@JoinColumn(name ="game_week_id")
public Gameweek getGame_week_id() {
return game_week_id;
}
public void setGame_week_id(Gameweek game_week_id) {
this.game_week_id = game_week_id;
}
public void setGame_week_id_int(Integer game_week_id_int) {
this.game_week_id = game_week_id;
}
public Integer getGame_id() {
return game_id;
}
public void setGame_id(Integer game_id) {
this.game_id = game_id;
}
@ManyToOne
@JoinColumn(name = "home_team", referencedColumnName = "teamId")
public PPTeam getHome_team() {
return this.home_team;
}
public void setHome_team(PPTeam home_team) {
this.home_team = home_team;
}
@ManyToOne
@JoinColumn(name = "away_team", referencedColumnName = "teamId")
public PPTeam getAway_team() {
return this.away_team;
}
public void setAway_team(PPTeam away_team) {
this.away_team = away_team;
}
@Override
public String toString() {
return "Fixture [id=" + id + ", game_week_id=" + game_week_id
+ ", game_id=" + game_id + ", home_team=" + home_team
+ ", away_team=" + away_team + "]";
}
}
最后是我的JSP表格
<form:form method="POST" commandName="fixture" action="${pageContext.request.contextPath}/team/addFixtures">
<table>
<tr>
<td>Gameweek Number:</td>
<td>
<form:input path="game_week_id"></form:input>
</td>
</tr>
<tr>
<td>Game No:</td>
<td>
<form:input path="game_id"></form:input>
</td>
</tr>
</table>
<br>
<input type="submit" value ="Add Fixture">
</form:form>
您的GameWeek
課程是什么? 我的問題是,您嘗試將text-field
綁定到對象GameWeek
。 當您發送帶有game_week_id
請求時,它在Spring模型圖中是string
,而Spring無法從string
創建一個GameWeek
對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.