加納充照
michi****@gmail*****
2008年 12月 12日 (金) 23:19:40 JST
加納です。 同じ問い合わせメールを何度か送信してしまっていたようです。 申し訳ありませんでした。 更にWicketのバージョンも失念しておりました。 現在動作確認中のバージョンはwicket1.3.5です(1.3.3、1.3.4では未確認)。 WAS7での動作確認は実施していなかったので下記情報は参考になります。 貴重な情報ありがとうございます。 アドバイスいただいた設定での動作確認がまだ出来ていませんが、 WAS、Tomcatのサーブレット仕様諸々について調べてみました。 WAS V6.1 V7.0 Tomcat 5.0 6.0 J2EE 1.4 JavaEE5 Servlet 2.4 2.5 JSP 2.0 2.1 WAS V6.1はServlet2.4(J2EE1.4)準拠のようです。 Tomcat5.5では正常に動作しているため、単にサーブレット仕様 の問題だけであれば、WAS6.1でも動作するのではないかと思っています。 Servlet仕様のバージョン問題というよりServletの実装依存のような 気もしてきました。 もしそうであれば、これ以上の問い合わせはこのメーリングリストには ふさわしくないのかもしれませんね。 2008/12/12 11:21 Shinpei Ohtani <shinp****@gmail*****>: > 大谷です。 > > Wicketの問題というよりは、Servlet仕様のバージョンの問題だったりしませんか? > こちらでは同じようにフィルタベースのアプリケーションでServlet2.5仕様準拠のweb.xmlを > 記述しているのですが、WAS7で問題なく稼動しています。 > > なので、 >> <web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee >> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> > > をServlet2.5の指定に変えてみるのはどうでしょうか? > (WAS6.1が準拠のServlet仕様が2.4だったか、2.5だったかは未確認ですので > 確認してみてください。) > 何かの参考になれば。 > > 2008/12/11 22:14 加納充照 <michi****@gmail*****>: >> いつもお世話になっております。 >> 加納と申します。 >> >> WebSphereApplicationServer6.1.21(JDK1.5)上でWicketFileterを用いたときに、 >> HTTPエラーコードの404(File Not Found)が返却される現象で悩んでおります。 >> 以下長文になり申し訳ありませんが、何かご存知の方おられましたら、 >> ご教示のほどよろしくお願いいたします。 >> >> [事象] >> Webアプリケーション起動後、リクエストURL「http://localhost:9080/Webアプリケーション名/」 >> を要求するとHTTPエラーコードの404が返却される >> >> [前提条件] >> 1. WebSphereApplicationServer6.1(以降WASで略します)でサーブレットフィルタの処理に問題があるため、 >> 以下のパッチとプロパティの設定を行う。 >> (1) WAS6.1 Fix Pack 21を適用 >> (2) WASの管理コンソールよりWebコンテナのプロパティcom.ibm.ws.webcontainer.invokefilterscompatibility >> をtrueにセット >> >> 2.web.xmlの設定 >> <web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee >> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> >> >> <display-name>Wicket Examples</display-name> >> >> <!-- Filter版 --> >> <filter> >> <filter-name>Example</filter-name> >> >> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> >> <init-param> >> <param-name>applicationClassName</param-name> >> >> <param-value>jp.xxx.gij.example.wicket.ExampleWebApplication</param-value> >> </init-param> >> </filter> >> >> <filter-mapping> >> <filter-name>Example</filter-name> >> <url-pattern>/*</url-pattern> >> <dispatcher>REQUEST</dispatcher> >> <dispatcher>INCLUDE</dispatcher> >> </filter-mapping> >> >> <welcome-file-list> >> <welcome-file>wicket?bookmarkablePage=index</welcome-file> >> </welcome-file-list> >> </web-app> >> >> 3. Webアプリケーションクラス >> (2) Webアプリケーションクラス >> mountBookmarkablePage()を使ってホームページクラスをURLパターンにマッピング >> >> public class ExampleWebApplication extends WebApplication { >> public Class getHomePage() { >> return Index.class; >> } >> } >> >> [現時点で判明していること] >> 1. tomcat5.0.28上では問題なくWebPage.getHomePage()で正常にページ遷移されている >> 2. web.xml及びExampleWebApplicationを以下のように修正すると、WebPage.getHomePage()による >> 初期ページまでは正常に表示されるが、その後、初期ページからsetResponcePage(Webページクラス)で >> ページ遷移した際に、HTTPエラーコードの404が返却される >> 3. setResponcePage(Webページクラス)の場合はHTTPエラーコード404が返却されるが、 >> setResponcePage(Webページインスタンス)やPageLinke(ページクラス)の場合は、正常にページ遷移される >> 4. WicketServletを使用した場合は、問題なく処理されている(ように見受けられる) >> >> [現時点での修正内容] >> >> 1. web.xml >> 「/wicket/*」を受け付けるfilter-mappingを使用する >> >> <web-app id="WebApp_9" version="2.4" >> xmlns="http://java.sun.com/xml/ns/j2ee" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee >> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> >> >> <display-name>Wicket Examples</display-name> >> >> <!-- Filter版 --> >> <filter> >> <filter-name>Example</filter-name> >> >> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> >> <init-param> >> <param-name>applicationClassName</param-name> >> >> <param-value>jp.xxx.gij.example.wicket.ExampleWebApplication</param-value> >> </init-param> >> </filter> >> >> <filter-mapping> >> <filter-name>Example</filter-name> >> <url-pattern>/*</url-pattern> >> <dispatcher>REQUEST</dispatcher> >> <dispatcher>INCLUDE</dispatcher> >> </filter-mapping> >> >> <filter-mapping> >> <filter-name>Example</filter-name> >> <url-pattern>/wicket/*</url-pattern> >> <dispatcher>REQUEST</dispatcher> >> <dispatcher>INCLUDE</dispatcher> >> </filter-mapping> >> >> <welcome-file-list> >> <welcome-file>wicket?bookmarkablePage=index</welcome-file> >> </welcome-file-list> >> </web-app> >> >> 2. Webアプリケーションクラス >> mountBookmarkablePage()を使ってホームページクラスをURLパターンにマッピング >> >> public class ExampleWebApplication extends WebApplication { >> public void init() { >> super.init(); >> >> mountBookmarkablePage("/wicket", getHomePage()); >> // mount(new HybridUrlCodingStrategy("wicket", getHomePage())); >> } >> >> public Class getHomePage() { >> return Index.class; >> } >> } >> >> 内容に一部不適切なところがあるかもしれませんがご了承ください。 >> お手数をおかけしますがよろしくお願いいたします。 >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicke****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> >> >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicke****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> >> > > > > -- > ============================= > Shinpei Ohtani > mail : shinp****@gmail***** > blog : http://d.hatena.ne.jp/shot6/ > twitter : http://twitter.com/shot6 > ============================= > > _______________________________________________ > Wicket-ja-user mailing list > Wicke****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >