Web モジュールからのドミノへのアクセスのためのクラスパス設定 (V4.0)
Java プログラムから、ドミノにアクセスするためには ncsow.jar などがクラスパスに入っている必要があります。
サーブレットなどの Web モジュールからアクセスする場合の基本的な設定の仕方をご紹介します。
まず、デフォルトのアプリケーション・サーバーのプロパティに「モジュールの可視性」というものがあります。
デフォルトは下記のように「モジュール」になっており、
オンラインヘルプには以下のように記述があります。
モジュールの可視性
アプリケーション・サーバーに使用するクラス・ローダー分離モード。
サーバー全体にクラス・ローダーを 1 つ使用する場合は、「サーバー 」を指定します。
エンタープライズ・アプリケーションごとにクラス・ローダーを
1 つ使用する場合は、「アプリケーション 」と指定します。
モジュールごとにクラス・ローダーを 1 つ使用する場合は、「モジュール 」と指定します。
WebSphere Application Server 3.5.x および
3.0.2.x からのアプリケーションの互換性を保つ場合は、「互換性 」と指定します。
「モジュール」は、そのモジュールの中だけでクラスパスが完結している状態です。他のクラスパスを見に行きません。
モジュールへのクラスパスの指定は「アプリケーション・アセンブリー・ツール」を使用して指定します。
サーブレットの場合は Web モジュールですので、サーブレットがまとめられている Web モジュールを選択して「クラスパス」に指定する わけなのですが、その前に後で述べるこのような理由 で先に必要な jar ファイルをJ2EEアーカイブに入れておかなくてはなりません。
J2EEアーカイブである、/installApps の中の *.ear ディレクトリ(この場合 sampleApp.ear
です)に、ncsow.jar を (/QIBM/ProdData/Lotus/Notes/Shared/ncsow.jar から)コピーしておきます。
「アプリケーション・アセンブリー・ツール」でサーブレットが入っている Web
モジュールを開きます。
「クラスパス」に ncsow.jar とファイル名を指定します。
このファイル名は ear ディレクトリ名 (J2EEアーカイブ) から相対パスでの指定になります。フルパスで"/QIBM/ProdData/Lotus/Notes/Shared/ncsow.jar"などと指定しても無視されるだけですのでご注意ください。
「クラスパス」フィールドについてのオンラインヘルプです。
追加のクラスパス
アーカイブで指定されたもの以外のリソースを参照するのに使われる、追加のクラスパスを指定します。この値は、EAR
ファイルのルートに相対で指定し、それぞれの値はスペースで区切ってください。ハード・ディスク上のファイルやディレクトリーを参照する絶対値は無視されます。JAR
ファイルには入っていないが、EAR ファイルのルートにあるクラスを指定するには、ピリオドとスラッシュ
(./) を使用します。myapp.ear
というファイルに mywebapp.war という名前の
Web モジュールが入っている、ディレクトリー構造の例を以下に示します。追加のクラスが
class1.jar と class2.zip に常駐しています。xyz.class
という名前のクラスは JAR ファイルにパッケージされておらず、EAR
ファイルのルートにあります。
myapp.ear/mywebapp.war
myapp.ear/class1.jar
myapp.ear/class2.zip
myapp.ear/xyz.class
追加のクラスパス・プロパティーの値として
class1.jar class2.zip ./ を指定します。(.class
ファイルのディレクトリーだけを指定します。)
[Top Pageに戻る]