WAS(WebSphere)でTomcat7のVirtualWebappLoader機能(環境依存の排除)と同じことをする

環境依存性の排除

Webアプリケーションにおける環境(JUnit実行、試験サーバ上での実行、本番サーバ上での実行 e.t.c.)依存の排除は大切だけど、結構大変ですよね。

NTTDATAの開発標準「TERASOLUNA」に、以下のような実現方法が紹介されています。

  1. WebAP(.ear、.war)には、環境依存性のある設定ファイル・設定値を持たせない。
  2. 環境依存性のある設定ファイルをまとめてひとつの.jarにパッケージする。
    ex. env.jar

Tomcat7で環境依存を排除するデプロイ方法

  1. 環境依存ファイルenv.jarを、APサーバ上のフォルダに設置する。
    ex. /etc/foo/bar/env.jar
  2. TomcatのVirtualWebappLoader機能を使用して /etc/foo/bar/*.jar をクラスパスに追加する。
  • [CATALINA_HOME]/conf/[contextPath].xml ファイルに下記の定義を追加する。
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
        virtualClasspath="/etc/foo/bar/*.jar" />

WAS(WebSphere)9で環境依存を排除するデプロイ方法

共有ライブラリーを定義する

  1. 管理コンソールにて、「環境」 > 「共有ライブラリー」をクリックする。
  2. 共有ライブラリーを、セル、ノードまたはサーバー・レベルで可視にするかどうかを指定する。
  3. 「新規」をクリックする。
  4. 新規共有ライブラリーの設定ページで、名前および 1 つ以上のクラスパスを指定する。

共有ライブラリーをアプリケーションに関連付ける

  1. 管理コンソールにて、「アプリケーション」 > 「アプリケーション・タイプ」 > 「WebSphere エンタープライズ・アプリケーション (WebSphere enterprise applications)」 > 「application_name」 > 「共用ライブラリー参照」をクリックする。
  2. 共有ライブラリを設定したいアプリケーションにチェックを付け「参照共有ライブラリー」をクリックする。
  3. 共有ライブラリを選択して保存する。

コメント

タイトルとURLをコピーしました