件名を検索しましたが、わかりやすいものは見つかりませんでした... Tomcat (v5.5) があります。そこには多くの webapp がデプロイされています。各 webapp には、すべてのライブラリが WEB-INF/lib ディレクトリにあります。だから重複が多い。
いくつかの一般的なメソッドを整理するために、クラシック ライブラリ (XXX_API) が作成されました。そのため、このライブラリは各 Web アプリケーションに追加されてコンパイルされますが、デプロイはされません。このライブラリは、Tomcat の共有ディレクトリにデプロイされます。
Spring 3.1.1 の JdbcTemplate を使用して、いくつかの DAO を共通ライブラリに統合しようとしました。そのため、XXX_API をデプロイするために、Spring ライブラリを共有ディレクトリにデプロイする必要がありました。
現在、すべてのアプリケーションを起動することはできません。それらのいくつかは、次の例外でクラッシュしました: java.lang.IllegalArgumentException. クラス org.springframework.jdbc.config.JdbcNamespaceHandler は NamespaceHandler インターフェースを実装していません。情報については、Spring 2.0.6 で開発されています:(
この問題は、applicationContext.xml でローカライズされているようです。
だから、ここで私の質問:
- Tomcat の共有ディレクトリはどのように機能していますか?
- Web アプリの lib ディレクトリよりも優先的にロードされますか?
- applicationContext.xml で宣言された名前空間についての単なる pb ですか?
- 両方の春のバージョンを持つことは可能ですか?
ありがとうございました。