10.4. AOP アプリケーションのパッケージ
AOP アプリケーションをJBoss Enterprise Application Platform にデプロイするには、 AOP アプリケーションをパッケージ化する必要があります。 AOP は SAR (MBean) と同様にパッケージ化されます。 XML ファイルを署名
*-aop.xml
とパッケージと共に直接 deploy/
ディレクトリにデプロイするか (これにより jboss-aop.deployer
ファイルにある base-aop.xml
が利用できます)、 クラスを格納する JAR ファイルに XML ファイルが含まれるようにすることができます。 JAR に XML ファイルが含まれるようにする場合、 ファイルの拡張子は .aop
でなければなりません。 また、jboss-aop.xml
ファイルは META-INF
ディレクトリに含まれなければなりません (例: META-INF/jboss-aop.xml
)。
JBoss Enterprise Application Platform 5 では、 使用するスキーマを指定しないと情報が正しく構文解析されないため、 必ず指定してください。 スキーマを指定するには、 次のように
xmlns="urn:jboss:aop-beans:1:0
属性をルート aop
要素に追加します。
<aop xmlns="urn:jboss:aop-beans:1.0"> </aop>
<aop xmlns="urn:jboss:aop-beans:1.0">
</aop>
.aop
JAR ファイルを使った既定の例を超えるものを作成するには、XML バインディング設定を格納する AOP ファイルが含まれるトップレベルのデプロイメントを作成します。 例えば、EAR ファイルまたは WAR ファイルに AOP ファイルを保持することができます。 AOP ファイル内にある META-INF/jboss-aop.xml
ファイルに指定されたバインディングは、 WAR ファイル全体のすべてのクラスに影響します。
EAR ファイル内の AOP ファイルを取得するには、 次の例のように Java モジュールとして
.ear/META-INF/application.xml
にリストされなければなりません。
重要
JBoss Enterprise Application Platform 5 では、
.ear
ファイルの内容は application.xml
にある一覧の順番通りにデプロイされます。 ロード時の組み入れを使用する場合は、 ejb
クラスや servlet
などがロードされる前にバインディングがシステムに存在するよう、 アドバイスされたクラスがデプロイされる前に example.aop
ファイルにリストされているバインディングがデプロイされなければなりません。 これには、 application.xml
の最初に AOP ファイルを記載します。 .sar
ファイルや .war
ファイルなど、 他のタイプのアーカイブは最初にデプロイされるため、 特別な処置は必要ありません。