現在、RHEL 4 Update 9 で WebSphere Application Server Community Edition v3.0.0.1 を実行しています。
以前は WAS 6.1 で実行されていた Web アプリケーションがありますが、WASCE に移行したいと考えていました。実装は、Web コンテンツ フォルダー内にシンボリック リンクされたディレクトリ "symdir" があり、同じファイル システム上にあるが Web アプリケーションと WASCE の外部にある別のフォルダーを指すようなものでした。内部的には、symlinked ディレクトリにコンテンツを動的に構築し、そこへのリンクを作成します。たとえば、symdir -> /tagHome では、/tagFile/some.tag を作成するため、Web アプリはそれを symdir/tagFile/some.tag として認識し、f/s はそれが /tagHome/tagFile/some.tag であることを認識します。次に、 http://hostname:port/context/symdir/tagFile/some.tagにリンクを作成し、ファイルをレンダリングします。これは単純な xml でした。これはすべて、以前は WAS 6.1 で機能していました。
ただし、このタイプの構成でアプリケーションを WASCE に移動すると、機能しなくなりました。具体的には、シンボリックリンクされたディレクトリをトラバースしてコンテンツを取り戻すことができません。さらに言えば、Webアプリケーションパッケージにディレクトリを追加して、それらをデプロイしてから、それらをヒットしようとしました。/context/* がブロックされているようなものです!
Web を掘り下げて最後に試したのは、org.apache.geronimo.tomcat.GeronimoStandardContext.allowLinking=true でした。挙動は変わらなかったようです。
また、似たようなものを here JSP files in external directoryで見つけましたが、web.xml にコンテキスト モジュールを追加するとコンパイラ エラーが発生します。
サーブレットのコーディング以外に、何かアイデアはありますか? 助けてくれてありがとう!