Mamoru WATANABE
mamor****@hotma*****
2003年 6月 16日 (月) 12:57:36 JST
渡辺です。 長文です。 Jetspeedを使い始めた時から、「Welcome」や「LoggedInWelcome」等のHTMLポー トレットの<url>要素に指定されているHTMLファイルを直接修正しても、その 変更がすぐに反映されませんでした。変更後しばらくしないと(キャッシュか ら消える頃?)反映されないので、「まあ、こういうものか」と思っていまし た。 最近関連するソースを見てみると、どうも本来はローカルのHTMLファイルを変 更すると、すぐに反映するのが本来の動作であることがわかりました。 HTMLポートレットの<url>要素に記述するURLは、<jetspeed_home>からの相対 パスで指定することになっています(例えばSearchポートレットでは /search/index.html)が、この相対パスから実際のパスを取得するのに ServletContextのgetResourceメソッドを利用しています。Tomcat4.1ではこの 結果が「jndi:/localhost/jetspeed/search/index.html」となり、実際のファ イルのパスと違うので、変更したHTMLファイルを見つけられないということに なっているようです。 添付したパッチはこの現象を回避するものですが、そもそもgetResourceメソッ ドから返ってくる「jndi:/localhost/...」というのがServlet仕様上正しいも ので、Tomcat4.1以外のServletコンテナでも常にこの形式となっているかがわ かりません。因みに、Tomcat3.3.1aでgetResourceメソッドを実行すると 「file:C:\tomcat-3.3.1a\webapps\jetspeed\...」となります。 とりあえずこのパッチで以下の環境でテストしてみたところ、正 常にHTMLファイルの変更を即時反映させることができました。 ■テスト環境(1) ・Windows XP Professional SP1 ・J2SDK1.4.1_01 ・Tomcat 4.1.18 ■テスト環境(2) ・Windows XP Professional SP1 ・J2SDK1.4.1_01 ・Tomcat 3.3.1a ■テスト環境(3) ・Red Hat Linux 8.0 ・J2SDK1.4.1_02 ・Tomcat 4.1.24 このパッチは本家のjetspeed-1.4-b4-src.zipにも、日本語版の jetspeed-japan-1.4b4_ja_1-src.zipにもあてることができます。但し日本語 版では若干の問題があり、これは後述します。 このパッチがTomcat以外のServletコンテナでも問題なく動作するかどうか確 認してみていただけないでしょうか? また、このパッチの中をよく見るとや や冗長になっています。それというのも前述のgetResourceメソッドをどのよ うに扱って良いのかがよく分からないためです。そこで、いろいろなServlet コンテナでのgetResourceメソッドの戻り値の情報を集めたいと思っています。 Tomcat以外のServletコンテナをお使いの方がいらっしゃいましたら、 getResourceメソッドの戻り値の形式を教えていただけませんでしょうか? 宜しくお願いします。 ** Jetspeed日本語版での問題点 実はこのパッチをあてることで、Jetspeed Content Admin(Jetspeedコンテン ツ管理)ポートレットを一部正常に動作させることができます。本家のソース にこのパッチをあててJetspeed Content Adminを実行すると、anonユーザの画 面のJetspeed Content Example(Jetspeedコンテンツ例)ポートレットに新た に文章を追加することができます。 ところが、Jetspeed日本語版ではJetspeed Content Adminポートレットが正常 に動作できません。いろいろ調べてみると、P-6パッチがあたると、動作がお かしくなるようです。 これはJetspeed日本語版が悪いのではなく、本家Jetspeed自体に抱えている問 題のようで、たまたまJetspeed日本語版のP-6パッチをあてたことによって顕 在化してしまったようです。 因みに、Jetspeed Content Adminの (Bookmarklet)というリンクをクリックす るとエラーになりますが、これには対応してません。そもそもこの使い方がよ く分かりません。 -- 渡辺 衛 mamor****@hotma***** -------------- next part -------------- テキスト形式以外の添付ファイルを保管しました... ファイル名: HTMLPortletPatches.zip 型: application/octet-stream サイズ: 1721 バイト 説明: 無しTélécharger