4.3.2. Seam 2.2. JPA 例の JBoss Enterprise Application Platform 6 への移行
概要
下記のタスクリストには、Seam 2.2 JPA の例を JBoss Enterprise Application Platform 6 へ正常に移行するために必要な変更の概要が記載されています。このアプリケーション例は JBoss Enterprise Application Platform 5.1 ディストリビューションの EAP5.1_HOME/jboss-eap-5.1/seam/examples/jpa/
下にあります。
重要
この例は、最初にアプリケーションを JBoss Enterprise Application Platform 6 上で実行できるようにすることを目的としています。この設定はサポート対象ではなく、Hibernate 4 を使用するよう次の手順でアプリケーションをアップグレードする必要があります。
手順4.12 タスク
jboss-web.xml ファイルを削除します。
jboss-seam-jpa.war/WEB-INF/
ディレクトリよりjboss-web.xml
ファイルを削除します。jboss-web.xml
に定義されるクラスローディングがデフォルトの挙動になります。persistence.xml ファイルの廃止されたプロパティーの削除
jboss-seam-jpa.war/WEB-INF/classes/META-INF/persistence.xml
ファイルのhibernate.cache.provider_class
プロパティーを削除またはコメントアウトします。<!-- <property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider"/> -->
Seam 2.2 依存関係の追加
下記の JAR を Seam 2.2 ディストリビューションのライブラリであるSEAM_HOME/lib/
からjboss-seam-jpa.war/WEB-INF/lib/
ディレクトリへコピーします。- slf4j-api.jar
- slf4j-log4j12.jar
- hibernate-entitymanager.jar
- hibernate-core.jar
- hibernate-annotations.jar
- hibernate-commons-annotations.jar
- hibernate-validator.jar
残りの依存関係を追加するため jboss-deployment-structure ファイルを作成する
次のデータが含まれるjboss-deployment-structure.xml
ファイルをjboss-seam-jpa.war/WEB-INF/
フォルダーに作成します。<jboss-deployment-structure> <deployment> <exclusions> <module name="javax.faces.api" slot="main"/> <module name="com.sun.jsf-impl" slot="main"/> </exclusions> <dependencies> <module name="org.apache.log4j" /> <module name="org.dom4j" /> <module name="org.apache.commons.logging" /> <module name="org.apache.commons.collections" /> <module name="javax.faces.api" slot="1.2"/> <module name="com.sun.jsf-impl" slot="1.2"/> </dependencies> </deployment> </jboss-deployment-structure>
結果
Seam 2.2 の JPA 例が JBoss Enterprise Application Platform 6 上にデプロイされ、正常に実行されます。