[cubby-user:90] cubbyを一部のPATHのみに適用したい。
Masanobu Shimura
[E-MAIL ADDRESS DELETED]
2008年 9月 16日 (火) 23:14:47 JST
Cubbyを利用させていただいています。
通常通り Cubbyを <url-pattern>/*</url-pattern> に適用はうまくいったのですが、
dojoを使用しており、dojoのjavascript を downloadするたびに HOT DEPLOYされるので、
適用を一部の 下位 PATHのみにしたいと思っています。(他に良い方法がありましたらご教授願います)
そこで、web.xmlの cubbyFilterやhotdeployFilterを <url-pattern>/dojo/*</url-pattern> の様に
一部 PATHの適用に変えました。
DojoAction Classは、下記の様になっています。
public class DojoAction extends Action {
@RequestParameter
String loginname;
@RequestParameter
String password;
public HttpServletRequest request;
private HashMap loginr = new HashMap();
public ActionResult login() {
if (loginname!=null && loginname.equals("S")) {
loginr.put("result", "pass");
} else {
loginr.put("result", "fail");
}
return new Json(loginr);
}
}
これは、以前と変わっていないのですが、上記変更をおこなうと、以前は下記 LOG(抜粋)だったのが、
DEBUG 2008-09-16 22:49:20,992 [btpool0-4] アクションメソッドを登録します
[regex=^/$,method=public org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.IndexAction.index(),uriParameterNames=[],requestMethod=POST,onSubmit=null,priority=2147483647,auto=true]
DEBUG 2008-09-16 22:49:20,993 [btpool0-4] /__internal_forward
へフォワードします (ルーティング {null=[regex=^/dojo/login$,method=public
org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.DojoAction.login(),uriParameterNames=[],requestMethod=GET,onSubmit=null,priority=2147483647,auto=true]})
DEBUG 2008-09-16 22:49:20,993 [btpool0-4] リクエストされたURIに次のルーティングがマッチしました
{null=[regex=^/dojo/login$,method=public
org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.DojoAction.login(),uriParameterNames=[],requestMethod=GET,onSubmit=null,priority=2147483647,auto=true]}
DEBUG 2008-09-16 22:49:20,994 [btpool0-4]
[E-MAIL ADDRESS DELETED]
を用いてリクエストを解析します。
DEBUG 2008-09-16 22:49:20,994 [btpool0-4] /__internal_forward の処理を開始します
DEBUG 2008-09-16 22:49:20,994 [btpool0-4] アクションメソッド(public
org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.DojoAction.login())を実行します
DEBUG 2008-09-16 22:49:21,006 [btpool0-4]
クラス(com.shimura.cubby.dojo.action.DojoAction[dojoAction])のコンポーネント定義を登録します
DEBUG 2008-09-16 22:49:21,100 [btpool0-4] [PropertyInterType]
Introducing... com.shimura.cubby.dojo.action.DojoAction
下記の様になってしまいます。
DEBUG 2008-09-16 23:12:11,808 [btpool0-2] アクションメソッドを登録します
[regex=^/$,method=public org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.IndexAction.index(),uriParameterNames=[],requestMethod=POST,onSubmit=null,priority=2147483647,auto=true]
DEBUG 2008-09-16 23:12:11,810 [btpool0-2] /__internal_forward
へフォワードします (ルーティング {null=[regex=^/dojo/login$,method=public
org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.DojoAction.login(),uriParameterNames=[],requestMethod=GET,onSubmit=null,priority=2147483647,auto=true]})
DEBUG 2008-09-16 23:12:11,810 [btpool0-2] リクエストされたURIに次のルーティングがマッチしました
{null=[regex=^/dojo/login$,method=public
org.seasar.cubby.action.ActionResult
com.shimura.cubby.dojo.action.DojoAction.login(),uriParameterNames=[],requestMethod=GET,onSubmit=null,priority=2147483647,auto=true]}
DEBUG 2008-09-16 23:12:11,839 [btpool0-2] HOT deployを終了しました
画面(直接アクセスすると)には
HTTP ERROR: 404
NOT_FOUND
RequestURI=/__internal_forward
と表示されます。
ヒントがあればよろしくお願いいたします。
志村正信
cubby-user メーリングリストの案内