Spring Validation @Asserttrue
-
27-09-2019 - |
質問
の結果として発生するビューJSP検証エラーメッセージに表示するにはどうすればよいですか @AssertTrue
注釈?特定のフィールドに結び付けられていませんが、フィールドの組み合わせを検証するために使用しています。使用する場合 <form:errors path="*"/>
そのフォームのすべてのエラーが表示されますか?
解決 2
ブールプロパティを宣言することは、これに役立つと思われるものです。ある場合:
@AssertTrue
public boolean isConditionTrue() {
...
...
}
次に、次のようなプロパティを宣言します。
private boolean conditionTrue;
作品。
他のヒント
私がテストしたことからそれは重要です どうやって テスト機能に名前を付けます。そして、あなたはそれを適切に名前にする必要があります。
フィールド、ゲッター、セッターは必要ありませんが、機能は「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"/>
所属していません StackOverflow