問題タブ [bean-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 投票する
1 に答える
2527 参照

java - JPA検証戦略

NetBeansを使用すると、JPA検証戦略の3つの値(自動、コールバック、なし)から選択できます。「自動」とはどういう意味ですか?「コールバック」とは、@ PrePersist、@ PreUpdate、および@PreRemoveの使用を意味しますか?

実行する検証がない場合に自動またはコールバックを使用すると、パフォーマンスが低下しますか?

0 投票する
3 に答える
6022 参照

jsf - JSf2とHibernateValidator4およびTomcat6

私が抱えている問題は、BeanValidationが期待どおりに機能していないことです。

nameにバインドされたフィールドを持つSessionScopedManagedBeanがありh:inputTextます。名前を入力する必要があり、最小長は1文字、最大長は5文字です。テキストボックスに名前を入力すると、それに応じてバッキングBeanによって検証され、失敗した場合は、対応するエラーメッセージが表示されると思います。

ただし、そうではありません。inputTextに有効なケース(「abc」など)を入力した場合でも、検証は常に失敗します。アプリケーションのデバッグ時に、getName()アクセサーが常に呼び出され、セッターに到達することはないようです。私は何か間違ったことをしていますか?バリデーターはアクセサーを使用して検証すると思いますが、問題は、セッターが名前の値を更新する機会がないことです...何かが足りないに違いありません。

以下はマネージドBeanです。

以下は、JSFxhtmlのフラグメントです。別々のフォームでいくつかの異なるバリエーションを試しましたが、最初のオプションは私が機能すると想定するものです(3番目のオプションと同等だと思いますが、念のために試しました:))

Windows XPProサービスのTomcat6.0.20で実行されている、Hibernate EntityManager3.3.2.GAおよびHibernateValidator4.0.2.GA(以下はMaven POMの関連部分)でJSF2.0.2-FCSを使用しています。パック3(32ビット)。

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

java - JSF で beanvalidation を一時的に抑制する

私は、電子メール アドレスとパスワードのフィールドを持つユーザー クラスを持っています。

このコードは、登録時にうまく機能します。しかし、ユーザーが自分のデータを編集するとき、パスワードと @EmailUse タグに問題があります。パスワードが<h:inputSecret id="password" value="#{user.password}"/>空なので困った@NotNull。メールアドレスについては、ユーザーからのメールアドレスがすでにデータベースにあるという問題がありますが、現時点では問題ありません。

私の質問は: この 2 つのチェックを一時的に無効にすることはできますか?

助けてくれてどうもありがとう

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

java - JPA および Spring での Hibernate Validator の使用

JPA 1プロバイダーとして、Hibernate Validator 4.0.2、Spring 3.0、およびHibernate 3.3.2(私が理解しているように、JPA2より前)を使用しています。

バリデーターを MVC レイヤーに統合するのは簡単であることがわかりました (それは機能します) が、バリデーターを JPA entityManager (JPA 1) に自動的に統合する方法がわかりません。

基本的に、永続化されるエンティティがいくつかありますが、それらは Web レイヤーからのものではないため、まだ検証されていません。バリデータの事前永続化を介してそれらを実行するきちんとした方法が欲しいです。

これを行う簡単な方法はありますか?JPA 2 プロバイダー (リリースされたときの Hibernate 3.5 など) を使用していた場合、それはほぼ自動的に行われることを認識しています。それは大まかに私が探しているものです。

0 投票する
7 に答える
11659 参照

java - JSR 303 Bean 検証 + Javascript クライアント側検証

サーバー側で JSR 303 Bean 検証を使用する場合、Javascript を使用して (コードの重複を最小限に抑えて) クライアント側のフォーム検証を実行する最良の方法は何ですか? 現在、Spring 3Hibernate Validatorを使用しています。

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

jpa - javax.validationをJavaSEプロジェクトにインポートするにはどうすればよいですか?

ここで説明するように、制約チェックを追加しようとしています。EclipseLink/JPAで@OneToManyのカーディナリティを指定する方法

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

java - 制約の検証

javax.validation.Validator注釈ベースの検証に関連するクラスを使用しています。

次のようなコンパイル エラーが表示されます。

型の不一致: List< Class< から変換できませんか? ConstraintValidator< capture#4-of ?,?>>> を List< Class< ? に拡張します。ConstraintValidator< ? を拡張します。注釈を拡張しますか?>>>

私は何が欠けていますか?

0 投票する
6 に答える
11356 参照

hibernate - JSR-303 依存性注入と Hibernate

春 3.0.2、休止状態 3.5.0、休止状態バリデーター 4.0.2.GA

以下を使用して、Spring の依存関係を ConstraintValidator に注入しようとしています。

アプリケーション コンテキストを次のように構成しました。

Spring のドキュメントによると、「カスタム ConstraintValidators が他の Spring Bean と同様に依存性注入の恩恵を受ける」ことができるはずです</p>

デバッガー内で、Spring が getBean を呼び出して ConstraintValidator を作成していることがわかります。後でフラッシュが preInsert をトリガーすると、別の ConstraintValidator が作成されて呼び出されます。問題は、この新しい ConstraintValidator 内で EntityManager が null であることです。ConstraintValidator 内に他の依存関係を注入しようとしましたが、これらは常に null です。

ConstraintValidator に依存関係を注入できるかどうかは誰にもわかりませんか?

0 投票する
3 に答える
16373 参照

java - ハイバネート @OneToOne @NotNull

@OneToOne次のような関係の@NotNull両側で宣言することは有効ですか。

これが無効であると言うものは何も見つかりませんが、永続化中に関係の少なくとも一方の側に違反する必要があるようです. (たとえば、最初に changeEntry を書き込むと、changeEntryDetails は一時的に null になります)。

これを試すと、例外がスローされnot-null property references a null or transient valueます。

両側が存在する必要があるため、可能であれば制約を緩和することは避けたいと思います。

0 投票する
5 に答える
122526 参照

java - 2つ以上のフィールドを組み合わせて検証するにはどうすればよいですか?

モデルを検証するためにJPA2.0/Hibernate検証を使用しています。現在、2つのフィールドの組み合わせを検証する必要がある状況があります。

モデルは、とが両方の場合は無効であり、それ以外の場合は有効です。getValue1()getValue2()null

JPA 2.0 / Hibernateでこの種の検証を実行するにはどうすればよいですか?単純な@NotNullアノテーションでは、検証に合格するには、両方のゲッターがnull以外である必要があります。