[Seasar-user:17416] [S2Click]リソースのルートパッケージを複数指定するとリソースが参照できなくなります。

イマム [E-MAIL ADDRESS DELETED]
2009年 5月 12日 (火) 10:39:11 JST


こんにちは、imamu.nwosと言います。

S2Clickにおいて、クラスパス内に格納したイメージ、JavaScriptなどを参照するために
ResourceServletを用いているかと思います。

ResourceServletの初期化パラメータとしてrootPackageを指定しますが、
これをカンマ区切りで複数指定するとリソースが参照できなくなります。

原因はResourceServletの初期処理(init())にて
初期化パラメータの値をインスタンス変数rootPathListに格納しているのですが、
追加するときにカンマで切り分けたもの(packageName)ではなく、
初期化パラメータの値そのもの(rootPackage)を追加しているためではないかと思います。
ResourceServletの133行目です。

おそらく、
rootPathList.add("/" + rootPackage.replace(".", "/"));
↓
rootPathList.add("/" + packageName.replace(".", "/"));

ソースをザッと見ておかしいなと思った程度ですので、
私のweb.xmlの設定に問題があるかもしれないのですが、
ご確認していただけないでしょうか?

以下に環境を明記します。
---------------------------------------------------------------
Java  1.5.0_16
S2Click 1.0
Tomcat 5.5.26
--------------------------------------------------------------

以上、よろしくお願いします。


Seasar-user メーリングリストの案内