サーバー側で JSR 303 Bean 検証を使用する場合、Javascript を使用して (コードの重複を最小限に抑えて) クライアント側のフォーム検証を実行する最良の方法は何ですか? 現在、Spring 3とHibernate Validatorを使用しています。
7 に答える
このオープン ソース プロジェクトを見つけましたが、死んでいるように見えます。復活させる価値があるかもしれません。
http://kenai.com/projects/jsr303js/pages/Home
このライブラリは、Spring MVC と統合された、JSR-303 および Hibernate Validator アノテーションに基づく HTML フォームのクライアント側検証を提供します。このライブラリは、HTML フォームとの基本的なやり取りを処理する JavaScript 検証コード ベースと、Hibernate Validator によってサポートされる検証注釈 (JSR-303 仕様以外のものを含む) を実装する JavaScript 関数を提供します。この JavaScript コード ベースは、提供されている taglib を使用するか、jar から JavaScript ファイルを抽出してタグを使用して含めることにより、ページに含めることができます。このコード ベースがページに含まれると、2 番目の taglib を使用して、HTML フォームを検証するための JavaScript コードが生成されます。タグの本文に JSON オブジェクトを指定して、追加の構成情報を指定することもできます。
Dojo に大きく依存している Spring JS を検討することをお勧めします。チュートリアルはここにあります。
自分で試してみる最も簡単な方法は、 Spring Rooをダウンロードし、サンプル スクリプトの 1 つを使用して petclinic サンプル アプリケーションを作成し (これには 5 分かかります)、javascript がどのように統合されているかを試すことです。Spring Roo は、ユーザーが使用するのと同じテクノロジー スタックでアプリを作成します (Spring + hibernate + jsr 303 の実装)
Richfaces はこれをサポートします。彼らのサイトには小さなデモがあります。