Весенняя проверка @asserttrue.
-
27-09-2019 - |
Вопрос
Как я могу отображать на сообщение об ошибке проверки View JSP, который возникает в результате @AssertTrue
Аннотация? Это не привязано к определенному полю, но я использую его для проверки комбинации полей. Если я использую <form:errors path="*"/>
Это отобразит все ошибки для этой формы?
Решение 2
Объявление логической собственности - это то, что кажется для этого. Так что, если есть:
@AssertTrue
public boolean isConditionTrue() {
...
...
}
Затем объявляете недвижимость, как:
private boolean conditionTrue;
работает.
Другие советы
От того, что я проверил, это важно КАК Вы называете свою тестовую функцию. И вы должны назвать его должным образом.
Вам не нужна поле, Gotter или Setter, но ваша функция должна начинаться с оператора 'is *'.
FE.
@AssertTrue
public boolean isConditionTrue() {
...
...
}
или
@AssertTrue
public boolean isSomethingElseOk() {
...
...
}
Хотя вам нужно поле и дому / сеттер, если вам нужно использовать форму ошибки с пути, как:
<form:errors path="someFieldToDisplay" />
Но я думаю, что это вполне очевидно.
Некоторая проблема схемы, которую я не наступил, но может быть полезным:
Это может быть полезно, а также полезно:Отсутствие сообщений об ошибках.
Но если вы используете схему без тега версии, он использует новейшую версию по умолчанию.
Вы должны назвать свою собственность:
@AssertTrue(message = "....")
private boolean conditionTrue; //***NOT isConditionTrue***
public boolean isConditionTrue() {
return conditionTrue;
}
public void setConditionTrue(boolean conditionTrue) {
this.conditionTrue= conditionTrue;
}
<form:errors path="*"/> or
<form:errors path="conditionTrue"/>