Hibernate Validators
Hibernate Validatorsは、小規模ながら非常に有用なプロジェクトです(その名称とは裏腹にHibernateライブラリそのものには結びつけられていません)。Hibernate Validatorsは基本的にJPAエンティティ用のバリデータを追加するものです(図3を参照)。具体的には、たとえば次のような新しいバリデータを指定できます。
@Length(min/max)@Max(value=)@Min(value=)@NotNull@NotEmpty(文字列用)@Pastと@Future(日付用)@Pattern(正規表現ベースの検証用)@Range(min=,max=)
詳細については、Hibernate Validatorsのマニュアルを参照してください。

Hibernate ValidatorsはSeamランタイムに含まれているので、新しいSeam Webプロジェクトのclasspathに自動的に追加されます。コードの中でHibernate Validatorsを使用し、それらをSeamとなめらかに統合するためには、次の例のように組み込みSeamタグ<s:validateAll>を使用する必要があります。
<h:form>
<div>
<h:messages/>
</div>
<s:validateAll>
<div>
Country:
<h:inputText value="#{location.country}" required="true"/>
</div>
<div>
Zip code:
<h:inputText value="#{location.zip}" required="true"/>
</div>
<div>
<h:commandButton/>
</div>
</s:validateAll>
</h:form>
Seamにおけるフォーム検証の詳細については、フォーム検証のチュートリアルを参照してください。
JBoss EJB 3.0 Application Server
Seamは初期リリースではJBoss Seamと呼ばれており、JBoss Application Server(AS)と密接に結びつけられていました。しかし、SeamチームはSeamがJBossプラットフォームの枠外にも普及することを望んでいたので、名称を単なるSeamに変え、非JBossサイトとしてseamframework.orgを作成しました。
とはいえ、SeamはJBoss ASと最も相性がよく、JBoss ASはSeamアプリケーションの開発で最もよく使用される環境です。私はSeamアプリケーションをGlassfishにデプロイできましたが、多くのコンフィグレーションが必要でした(とりわけ、「web.xml」ファイルで、すべてのEJB JSFマネージドbeanを手動でEJBリファレンスとして登録しなければなりませんでした)。
JBoss AS上でSeam 2.0.1を使用してアプリケーションを開発するためには、JBoss Application Server 4.2.2をダウンロードする必要があります。意外なことに、デフォルトバージョンであるSeam 1.2.1は、このバージョンのJBoss ASとはあまり相性がよくないようです(私が試したときには、Apache MyFacesに関連するデプロイエラーが発生しました)。これはおそらく、バージョン4.2以降のJBoss ASはSunのJSFリファレンス実装を使用し、停滞しているApache MyFaces実装を含めるのをやめたからでしょう。
この記事は参考になりましたか?
- japan.internet.com翻訳記事連載記事一覧
- この記事の著者
-
japan.internet.com(ジャパンインターネットコム)
japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
Jacek Furmankiewicz(Jacek Furmankiewicz)
Compuware Corporation of Canadaの上級開発者/設計者。UNIX、PowerBuilder、C#/Microsoft .NET、Java、PHP、Microsoft SQL Server、OracleなどでITの専門家として12年の経験がある。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
