- - PR -
共通ライブラリの配置について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 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ファイルの扱いについて明確なもの、あるいは推奨されるものが あるのでしょうか? よろしくお願い致します。 | ||||
|
投稿日時: 2005-12-09 12:16
WEBアプリケーションをearとしてまとめ、ライブラリを共有すべきです。
| ||||
|
投稿日時: 2005-12-09 13:29
レスありがとうございます。 WebApp1とWebApp2は業務的に別々に管理したいのでearとして まとめることはできれば避けたいのですが、通常そのような 構成は取らないものなのでしょうか? | ||||
|
投稿日時: 2005-12-09 13:53
アプリケーションサーバのクラスローダの動きに合わせて、配置すればよいかと。
このへんを、ご参考に。 http://www.jajakarta.org/tomcat/tomcat5.0/ja/docs/tomcat-docs/class-loader-howto.html |
1