Springサービス・コンポーネントによるGroovyおよびAspectjクラスの構成
Spring構成ファイルでGroovyまたはAspectjクラスを構成する場合は、次の規則に従う必要があります。
-
classpath
プロトコルを使用します。script-source="classpath:"
SCAパッケージはクラス・ローダーの通常のJARファイルとして処理されないため、相対ファイル・パスは使用できません。たとえば、次の
classpath
プロトコルはクラス・パスからGroovyファイルを検索することを示します。script-source="classpath:service/GroovyGreeter.groovy"
-
classpath
プロトコルを使用する場合は、GroovyファイルとAspectjファイルを次のいずれかのディレクトリに追加します。他のディレクトリは使用できません。-
SCA-INF/classes
-
SCA-INF/lib
-
共有SOA
lib
ビルド・スクリプトが
classes
ディレクトリを削除するように構成されている場合は、GroovyファイルをSCA-INF/lib
ディレクトリに格納するか、またはビルド・スクリプトを削除が行われないように設計します。 -
-
GroovyまたはAspectjのSpring拡張JARファイル・ライブラリを管理対象サーバーの
setDomainENV.sh
またはsetDomainENV.bat
ファイルのクラス・パスに追加し、サーバーを再起動します。これにより、デプロイメントが正常に実行されることが保証されます。SpringではJavaリフレクションを使用してアスペクト指向プログラミング(AOP)がインスタンス化されるため、再起動が必要です。リフレクションの使用により、クラスの検索がシステム・クラス・ローダーに限定されます。システム・クラス・ローダーに変更を加えた場合は、サーバーの再起動が必要になります。