我正在嘗試創建一個簡單的SpringMVC/thymeleaf項目。我已經完成了我的存儲庫,域和控制器,只剩下前端。問題是,我似乎無法創建一個新的對象,春天不斷彈出一個無法綁定請求元素異常對我。 到目前爲止,我的代碼是這樣的(這是一個子集) 我的郎域類無法綁定百里香形式的請求元素
@Entity
public class Lang {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@Column(name = "lang_id")
private Integer id;
private String lang;
public Lang(){}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getLang() {
return lang;
}
public void setLang(String lang) {
this.lang = lang;
}
}
我控制器保存要求保存
@RequestMapping(value = "/lang/save")
public String saveLang(Lang lang){
langService.saveLang(lang);
return "redirect:/lang/"+lang.getId();
}
我的服務實現
@Service
public class LangServiceImpl implements LangService{
private LangRepository langRepository;
@Autowired
public void setLangRepository(LangRepository langRepository){
this.langRepository = langRepository;
}
@Override
public Iterable<Lang> listAllLanguages() {
return langRepository.findAll();
}
@Override
public Lang getLangById(Integer id) {
return langRepository.findOne(id);
}
@Override
public Lang saveLang(Lang lang) {
return langRepository.save(lang);
}
@Override
public void deleteLang(Integer id) {
langRepository.delete(id);
}
}
和我的百里香葉形式
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head lang="en">
<title>CGI-security-KnowledgeBase</title>
<!--/*/ <th:block th:include="fragments/headerinc :: head"></th:block> /*/-->
</head>
<body>
<div class="container">
<!--/*/ <th:block th:include="fragments/header :: header"></th:block> /*/-->
<h2 class="center">Language details</h2>
<div>
<form class="form-horizontal" th:object="${language}" th:action="@{/lang/save}" method="get">
<input type="hidden" th:field="*{id}"/>
<div class="form-group">
<label class="col-sm-2 control-label">Language value:</label>
<div class="col-sm-10">
<input type="text" class="form-control" th:field="*{lang}"/>
</div>
</div>
<div class="row">
<button type="submit" class="btn btn-default">Submit</button>
</div>
</form>
</div>
</div>
</body>
</html>
我已經完成了我的倉庫測試(我可以保存並獲取),並且我可以在彈簧啓動時用加載程序在h2實例中注入數據。問題只在表單提交。我是新來的春天,在這裏完全失敗。
錯誤寄回是
週二年2月2 15點39分42秒EST 2016 有意外的錯誤(類型=錯誤的請求,狀態= 400)。 無法將[java.lang.String]類型的值轉換爲所需的類型[cgi.security.domain.Lang];嵌套異常是org.springframework.core.convert.ConversionFailedException:無法從類型[java.lang.String]轉換爲類型[java.lang.Integer]爲值'JSP';嵌套的例外是java.lang.NumberFormatException:對於輸入字符串:「JSP」
感謝