問題タブ [javax.validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
26527 参照

java - Springブートでタイプ「java.lang.Boolean」を検証する方法

値として「true」または「false」のみを持つように検証したいブールフィールドがあります(引用符なし)。しかし、このフィールドでは、制限したい値 (引用符付き) として「true」または「false」も許可されています。

これらの値を一致させるために @Pattern アノテーションを使用しようとしました。しかし、次のエラーがあります。

javax.validation.UnexpectedTypeException: HV000030: タイプ 'java.lang.Boolean' を検証する制約 'javax.validation.constraints.Pattern' のバリデーターが見つかりませんでした。「再起動可能」の構成を確認してください

私のコードは次のとおりです。

私は何をすべきか?この問題を克服する他の方法はありますか? 前もって感謝します。

0 投票する
4 に答える
3443 参照

java - ConstraintViolationException からクエリ パラメータ名を取得する方法

私はサービスメソッドを持っています:

page-numberAPI の呼び出し元がクエリ パラメーターの適切な値を送信しない場合は、javax.ConstraintViolationexception発生しています。例外のメッセージは次のようになります。

getWhatever.pageNumber must be equal or greater than 0

応答本文では、代わりに次のメッセージが必要です。

page-number must be equal or greater than 0

メッセージに引数の名前ではなく、クエリ パラメータの名前を付けたい。引数の名前を含む私見は、実装の詳細を公開しています。

問題は、クエリ パラメータ名を持つオブジェクトが見つからないことです。には無いようConstraintViolationExceptionです。

spring-boot でアプリを実行しています。

どんな助けでも大歓迎です。

PS: 私は、問題を解決すると主張する他の同様のスレッドに行ったことがありますが、実際にはどれも実際には解決していません。

0 投票する
1 に答える
1989 参照

java - javax.validation.ConstraintDeclarationException: HV000131. 階層オブジェクトでのカスケード検証

次の階層があります。

B クラスには、サービスに @Validated({RequiringLanguageCode.class}) がある場合にのみ、@NotEmpty で検証する必要があるプロパティ呼び出し言語コードがあります。

ここで、D は、NotNull として検証する必要がある C プロパティと、C クラス内にある値を持つ基本クラスです。

C クラスには、@NotEmpty として検証される 2 つの文字列が含まれています。

これを mockito を使用してテストしようとすると、トークン値 (value1 と value2) が空の場合、C クラスの値は検証されません。

誰か助けてくれませんか? 誰かが何が起こっているのかについて何か考えがありますか?

テストは次のとおりです。

AAssembler には @Validated({RequiringLanguageCode.class}) という注釈が付けられます

ConstraintViolationException の代わりに IllegalArgumentException を起動する理由は、この問題の範囲外です。制約違反をキャッチし、代わりに IllegalArgumentException をスローします。

アセンブラーのビルド メソッドには、次の注釈が付けられた制約もあります。

誰かが私を助けてくれれば、とても感謝しています。とにかくありがとう。