Я использую весенний ботинок и тимеляф для веб-приложения.Весенняя загрузка + Пользовательские сообщения об ошибках Thymeleaf
Я хочу настроить сообщения об ошибках проверки, а не использовать значения по умолчанию. Я нашел способ сделать это, создав файл messages.properties с ограничениями и сообщением. Я также обнаружил, что могу создавать пользовательские сообщения на основе таргетинга класса, на котором я настроен, и на основе этого также могу использовать методы интернационализации.
Чтобы переопределить сообщения по умолчанию, я создал свой собственный messages.properties файл:
Size.message=El tamño no es correcto
NotNull.message=No puede ser nulo
Min.message=No cumple con el minimo
я установить ограничения в моем классе:
public class Person {
@Size(min=2, max=30)
private String name;
@NotNull
@Min(value = 18L)
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
Это моя форма:
<form action="#" th:action="@{/form}" th:object="${person}" method="post">
<table>
<tr>
<td>Name:</td>
<td><input type="text" th:field="*{name}"/></td>
<td th:if="${#fields.hasErrors('name')}" th:errors="*{name}">Name error</td>
</tr>
<tr>
<td>Age:</td>
<td><input type="text" th:field="*{age}"/></td>
<td th:if="${#fields.hasErrors('age')}" th:errors="*{age}">Name error</td>
</tr>
<tr>
<td>
<button type="submit">Enviar</button>
</td>
</tr>
</table>
</form>
И я разместил messages.properties в папке ресурсов:
По этим ссылкам я делаю правильно:
Thymeleaf : How to use Custom Message Key in JSR-303 Annotation
How to include message.properties with thymeleaf
Но это еще не отображать пользовательские сообщения об ошибках, которые я написал.
Любое предложение? Заранее благодарим за помощь.
GitHub с кодом образца: https://[email protected]/MichaelKnight/ValidandoFormularios.git
Можете ли вы сделать чистую сборку и проверку? Иногда изменения, внесенные в приложение загрузки весны, могут не отображаться до тех пор, пока приложение не будет очищено и не будет построено. – harshavmb
@harshavmb Я просто сделал это. Ничего нового :( –