問題タブ [spring-validator]

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 投票する
3 に答える
7533 参照

hibernate - Hibernate バリデーターの単体テスト

クラス検証テストに関するHibernateのドキュメントを読んでいますが、「問題」の解決策が見つかりませんでした。カスタムバリデーターをテストしたいと思います。たとえば、次のクラスがあるとします。

そして、すべてのユーザーがバルセロナ市にいることを確認したいと思います。そのために、次のようにカスタム ユーザー バリデーターを実装します。

例で提供されているデフォルトのバリデーターの代わりにこのカスタムバリデーターを使用する方法がわかりません。これは、注釈付きのフィールド制約のみをチェックし、「ビジネスロジック」のものはチェックしません。それに関する例や手がかりはありますか?

ありがとう!

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

spring - 永続化前に Hibernate で検証された内部 @Entity クラスからの Spring BindingResult 例外で処理する方法

2 つの @Entity Bean があります。Bean 1 は 2 番目の「1 対多」です。Bean1 と Bean2 には、JSR303 の異なる注釈バリデーターがあります。

私の仕事は、内部の Bean2 を検証することです。まず、Bean1 の @Validated を持つコントローラーがあります。

Hibernate は、DB に保持しようとする前に JSR303 を自動的に検証します。したがって、Bean2 からの検証例外はありません。Spring はそれらを処理せず、Hibernate がそれをスローするためです。

DTO Bean のようなものを作成して検証できます。@Valid とマークすると内部の Bean2DTO が検証され、永続化の前に検証がないため、Hibernate 側から例外はスローされません。その場合も、Controller メソッドに BindingResult を設定します。

上記の2つのオプションなしで、Hibernate org.hibernate.cfg.beanvalidation.BeanValidationEventListener.validate(..) からスローされた javax.validation.ConstraintViolationException を私の BindingResult に取得する解決策はありますか。

また、他の量のロジックが破損しているため、永続化の前に Hibernate の自動検証を無効にすることはできません。

ありがとうございました。

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

spring-mvc - Spring MVC が messages.properties ファイルを読み取れない

プロパティ ファイルを使用してカスタム検証エラー メッセージを使用しようとしています。messages.properties ファイルを web content/web-inf/ フォルダーに配置しました。

私のapplicationContextファイルは次のとおりです。

そして私のコントローラーは:

BatchDomain は次のとおりです。

私がグーグルで見た限り、私は正しいアプローチに従っています。では、この問題の背後にある理由は何でしょうか?

0 投票する
2 に答える
1057 参照

java - Spring で検証前にコードがデータを挿入する理由

ここにコードがあります:

残りのsaveGuestBookMessage()コードを実行する前に、いくつかの検証が必要です。私の検証のポイントは、データベースに同じユーザー名が存在するかどうかを確認することです。データベースにユーザー名が存在する場合、jsp ページで「別の名前を選択してください」などのエラー メッセージを表示する必要があります。 .

ここに私のバリデーターコードがあります:

基本的にはうまくいくはずですが、エラーが発生します:

これは、値がデータベースに存在し、この値が一意である必要があることを示しています。Ok!しかし、なぜ Validator は値をチェックせずに最初に値を挿入するのですか?

私のバックオブジェクト(GuestBookBackObject):

ありがとうございました。

0 投票する
2 に答える
760 参照

spring - フォーム送信後の LocalDateTime 形式

次のjQuery関数を使用して、日付ピッカーをフォーマットします

選択すると、テキスト フィールドが正しく設定されていることがわかりますNovember 2013。フォームが送信される前に、Spring検証を使用して日付を検証しています

ただし、フォームが送信された後、テキスト フィールドは に変更され2013-11-01T00:00:00.000ます。フィールドを に維持するにはどうすればよいNovember 2013ですか?