[英]hibernate validator doesn't show error message
Hibernate Validator不顯示錯誤消息。 我錯過了什么? 請在下面查看我的代碼。
這是一個依賴項:
<!-- Hibernate Validator -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.2.0.Final</version>
</dependency>
和帶有注釋列的實體:
@Entity
@Table(name = "transport")
public class Transport {
....
@NotEmpty
@Column(name = "name")
private String name;
....
}
這是控制器的方法:
//show all and add form
@RequestMapping (value = "/admin/transports", method = RequestMethod.GET)
public String findAll(ModelMap map){
List<Transport> transports = transportService.findAll();
map.put("transport", new Transport());
map.put("transports", transports);
return "admin/transports/list";
}
//add new
@RequestMapping(value = "/admin/transport/add", method = RequestMethod.POST)
public String addTypeShop(@ModelAttribute("type") @Valid Transport transport, BindingResult result) {
if (result.hasErrors()) {
return "redirect:/admin/transports";
} else {
this.transportService.addTransport(transport);
return "redirect:/admin/transports";
}
}
和jsp頁面:
<form:form role="form" action="/admin/transport/add" method="post" commandName="transport">
<div class="row">
<div class="col-lg-6">
<div class="form-group">
<label for="name">Name</label>
<form:input type="text" path="name" class="form-control input-sm" id="name" autofocus="true"/>
<form:errors path="name"/>
</div>
</div>
<input type="submit" class="btn btn-sm btn-primary" value="Add" onclick="loading()"/>
</form:form>
您沒有任何代碼將錯誤顯示給最終用戶。
請參閱以下鏈接獲取示例: http : //www.mkyong.com/spring-mvc/spring-mvc-form-errors-tag-example/
另外,看起來您實際上並沒有在表單中設置命令對象。 您可能沒有顯示該代碼。
小提示:如果您有驗證錯誤,我不會進行重定向,只需將它們直接發送回它們來自的頁面即可。
編輯
經過進一步審查,我確實發現您有。 通常,這超出了表格本身。
<form:errors path="transport"/>
<form:form role="form" action="/admin/transport/add" method="post" commandName="transport">
<div class="row">
<div class="col-lg-6">
<div class="form-group">
<label for="name">Name</label>
<form:input type="text" path="name" class="form-control input-sm" id="name" autofocus="true"/>
</div>
</div>
<input type="submit" class="btn btn-sm btn-primary" value="Add" onclick="loading()"/>
</div>
</form:form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.