2009年02月04日

seam-genで出来るファイル

seam-genでプロジェクトを生成すると、色んなファイルや、似たようなファイルができる。

当初戸惑ったので、簡単に整理してみた。

生成されたプロジェクトは 3つのデータベースと永続性設定を含んでいる。

・persistence-dev.xmlや、import-dev.sql、hoge-dev-ds.xml

アプリケーションを開発データベースにデプロイするときに使用される。
seam-gen に既存データベースで作業しているかを伝えるかどうかによって、
スキーマはデプロイメント時に自動的にエキスポートされる場合がある。

・persistence-prod.xmlや、import-prod.sql、hoge-prod-ds.xml

実稼働環境のデータベースにアプリケーションをデプロイする場合に使用される。
スキーマはデプロイメント時に自動的にエキスポートされない。

・persistence-test.xmlや、import-test.sql

TestNG ユニットテストを実行する場合に利用される。


・components-dev.properties、components-prod.properties、components-test.propertiesなど。

components.xmlのワイルドカードの定義をする。(@jndiPattern@の部分)
デプロイ時にcomponents.propertiesファイルに記述された値に置き換えることができる。
適用基準は、persistence.xmlと同じ。


・seam-gen.reveng.xml

特定のリバースエンジニアリングの、 アスペクトの制御を可能にする。


・messages_en.propertiesなどなど

それぞれのロケールのメッセージファイル。jaも出来たらうれしかった。

・security.drl

Droolsのルールファイル。WorkingMemoryというAPI経由で操作される。

login.xhtmlとAuthenticator.java、components.xmlと絡めて動作させることができる。(試してない。)

ビジネスルールをシステムに依存しない規則として管理したい場合などに有益(らしい)。


J2EE, JBossに関するファイルとして

・components.xml

Seamアプリケーション上で動作するコンポーネントの構成、制御を行う設定ファイル。

・application.xml

アプリケーションをEARファイルとしてデプロイするための定義。

・ejb-jar.xml

SessionBeanに対してSeamInterceptorをアタッチするための定義。

・jboss-beans.xml

追加のマイクロコンテナなどの設定(例えば、追加データソース)

・jboss-app.xml

アプリケーション内でEntitiyManagerをひとつしか使用しない場合、
jboss-app.xmlファイルを用意しておけばユニット名の指定無しにデフォルトのEntityManagerを容易に見つけることができるようになる

・persistence.xml

JPAを介した永続化を有効にするためにデータベースの場所や設定を定義。


後は、WEBアプリケーションのファイルだったり、JSFのファイルだったりなので省略。


ふと、以前から調べているマイクロコンテナの設定って、この辺でやるんじゃないの?ってまとめながら気付いた。

早速、試してみよう。改めて出力すると得るものがあるね〜。勘が当たればいいのだけどね。。。


2009/2/5 追記
posted by hana at 15:17| Comment(0) | TrackBack(0) | JBoss Seam関連 | このブログの読者になる | 更新情報をチェックする