ページの先頭行へ戻る
Interstage Application Server V12.0.0 Java EE 7 設計・構築・運用ガイド
FUJITSU Software

2.22.5 クラスローダ使用時の注意事項

ここでは、クラスローダを使用する際の注意事項について説明します。

クタを使用する際の注意事項

ネイティブライブラリを使用したコネクタを運用する場合、配備したInterstage Java EE 7 DASサービスまたはIJServerクラスタから参照可能にするために、ネイティブライブラリへのパスを環境変数PATH(Solaris/LinuxではLD_LIBRARY_PATH)に設定します。
詳細は、「4.3.3 環境変数の設定」を参照してください。

Java EEアプリケーションでJNIを使用する場合の注意事項

同じNativeモジュールは、別々のクラスローダでロードすることはできません。JNIを使用するクラスがアプリケーション(EAR、ejb-jar、WAR、RAR)に含まれている場合、同じNativeモジュールを別々のクラスローダでロードするとjava.lang.UnsatisfiedLinkErrorがスローされます。
java.lang.UnsatisfiedLinkErrorがスローされた場合は、JNIを使用するクラス(nativeメソッドを実装しているクラス)をアプリケーションに含めずに、JNIを使用するクラスを共通ディレクトリに保管してください。
また、JNIを使用するクラスがアプリケーション(EAR、ejb-jar、WAR、RAR)に含まれている場合、そのアプリケーションはHotDeployを使用できません。
使用した場合は、java.lang.UnsatisfiedLinkErrorがスローされ、HotDeployに失敗する可能性があります。java.lang.UnsatisfiedLinkErrorがスローされ、HotDeployに失敗した場合は、Interstage Java EE 7 DASサービスまたはIJServerクラスタを再起動してください。
JNIを使用するアプリケーションでHotDeployを使用する場合は、JNIを使用するクラスを共通ディレクトリに設定してください。なお、JNIを使用するクラスを入れ替える場合は、Interstage Java EE 7 DASサービスまたはIJServerクラスタを再起動してください。