- PR -

共通ライブラリの配置について

1
投稿者投稿内容
debora
会議室デビュー日: 2003/03/20
投稿数: 7
投稿日時: 2005-12-09 12:03
いつもお世話になっております。
WEBアプリケーションで使用する共通ライブラリの配置について質問です。

1台のアプリケーションサーバ上で2つのWebアプリケーション
WebApp1とWebApp2が動作する環境があります。

WebApp1とWebApp2ではJDBCドライバやlog4j.jarなど両方共通で使いたいライブラリと
WebApp1だけで使用したい個別のjarライブラリ WebApp1_common.jarがあるのですが、
それぞれどこに配置するのがベストなのか悩んでいます。

私の考えでは、log4j.jarのように同一サーバ内の全てのWebアプリケーションで
共通で使用するモジュールについては$JAVA_HOME\jre\lib\extに配置して、
1つのWebアプリケーション内で使用するモジュールはweb-inf\libに配置するのが
妥当なのではと考えています。

ただ、log4j.jarをWebApp1\web-inf\libに配置しても、CLASSPATHさえ通っていれば、
WebApp2からでもlog4j.jarを利用できてしまうので、各Webアプリケーションとモジュールの
ディレクトリ構成を気にしなければ、結局のところCLASSPATHが通っていればどこに
配置してもかまわないものなのかとも考えます。

J2EEのルールとしては、jarファイルの扱いについて明確なもの、あるいは推奨されるものが
あるのでしょうか?

よろしくお願い致します。
Anthyhime
ぬし
会議室デビュー日: 2002/09/10
投稿数: 437
投稿日時: 2005-12-09 12:16
WEBアプリケーションをearとしてまとめ、ライブラリを共有すべきです。
debora
会議室デビュー日: 2003/03/20
投稿数: 7
投稿日時: 2005-12-09 13:29
引用:

Anthyhimeさんの書き込み (2005-12-09 12:16) より:
WEBアプリケーションをearとしてまとめ、ライブラリを共有すべきです。



レスありがとうございます。
WebApp1とWebApp2は業務的に別々に管理したいのでearとして
まとめることはできれば避けたいのですが、通常そのような
構成は取らないものなのでしょうか?
holic
ベテラン
会議室デビュー日: 2004/08/24
投稿数: 74
投稿日時: 2005-12-09 13:53
アプリケーションサーバのクラスローダの動きに合わせて、配置すればよいかと。

このへんを、ご参考に。
http://www.jajakarta.org/tomcat/tomcat5.0/ja/docs/tomcat-docs/class-loader-howto.html
1

スキルアップ/キャリアアップ(JOB@IT)