[Seasar-user:17765] Re: s2struts.diconについて

吉村 実 [E-MAIL ADDRESS DELETED]
2009年 6月 15日 (月) 17:56:38 JST


よしむらです。

ご回答ありがとうございます。
お手数おかけしまして、すいません。

ご教授いただいたように下記の通り、
修正したのですが、ログが以下の状態で止まり、
ログイン画面が表示されなくなってしまいました。


情報: Server startup in 114665 ms
DEBUG 2009-06-15 17:26:58,375 [http-8080-Processor25] Get module name for
path /loginInit.do
DEBUG 2009-06-15 17:26:58,375 [http-8080-Processor25] Module name found:
default
DEBUG 2009-06-15 17:26:58,445 [http-8080-Processor25] Processing a 'GET' for
path '/loginInit'

(以前のログ)
情報: Server startup in 112341 ms
DEBUG 2009-06-15 17:50:21,352 [http-8080-Processor25] Get module name for
path /loginInit.do
DEBUG 2009-06-15 17:50:21,352 [http-8080-Processor25] Module name found:
default
DEBUG 2009-06-15 17:50:21,402 [http-8080-Processor25] Processing a 'GET' for
path '/loginInit'
DEBUG 2009-06-15 17:50:53,478
[ContainerBackgroundProcessor[StandardEngine[Catalina]]] Start expire
sessions StandardManager at 1245055853478 sessioncount 1
DEBUG 2009-06-15 17:50:53,478
[ContainerBackgroundProcessor[StandardEngine[Catalina]]] End expire sessions
StandardManager processingTime 0 expired sessions: 0
INFO  2009-06-15 17:51:15,911 [http-8080-Processor25] 開始 [Account-unknown]
jp.go.XXXX.login.action.impl.LoginInitActionImpl#execute)
INFO  2009-06-15 17:51:21,709 [http-8080-Processor25] 終了 [Account-unknown]
jp.go.XXXX.login.action.impl.LoginInitActionImpl#execute) : [success]
DEBUG 2009-06-15 17:51:21,709 [http-8080-Processor25]
processForwardConfig(ForwardConfig[name=success,path=/WEB-INF/pages/login.js
p,redirect=false,module=null,extends=null,catalog=null,command=null])
DEBUG 2009-06-15 17:51:21,959 [http-8080-Processor25]
servletPath=/WEB-INF/pages/login.jsp, pathInfo=null, queryString=null,
name=null



【NavigatePojoProcessAction 】

public class NavigatePojoProcessAction extends Action {

	(略)

	public ActionForward execute(ActionMapping mapping,
				ActionForm form,
				HttpServletRequest request,
				HttpServletResponse response) throws
Exception {

		if (this.pojoCommands.size() == 0) {
			throw new
NotRegisteredComponentRuntimeException(PojoCommand.class);
		}

		S2Container container =
SingletonS2ContainerFactory.getContainer();
		Class actionInterface = this.classRegister.getClass(mapping.
getType());

		Object actionInstance =
container.getComponent(actionInterface);

		PojoInvocation invocation
			= new PojoInvocationImpl(this.pojoCommands, mapping,
					actionInterface, actionInstance,
form, request, response);

		String forward = invocation.execute();

		if(ConstantValues.SUCCESS.equals(forward)){

			UserInfo userInfo = (UserInfo)
container.getComponent(UserInfo.class);
			userInfo.movePage(request.getRequestURI());

			return mapping.findForward(forward);

		} else {

			return null;
		}
	}

}






【s2struts_hoge.dicon】
<component name="pojoProcessAction"
class="jp.go.XXXX.navigate.action.NavigatePojoProcessAction">
	<initMethod name="addPojoCommand"><arg><component class="org.seasar.
struts.pojo.commands.PropertyBindingCommand"/></arg></initMethod>
	<initMethod name="addPojoCommand"><arg><component class="org.seasar.
struts.pojo.commands.SingleMethodCommand"/></arg></initMethod>
	<initMethod name="addPojoCommand"><arg><component class="org.seasar.
struts.pojo.commands.DispatchCommand"/></arg></initMethod>
</component>







> -----Original Message-----
> From: [E-MAIL ADDRESS DELETED]
> [mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of
> Toshihiro Nakamura
> Sent: Monday, June 15, 2009 5:02 PM
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:17764] Re: s2struts.diconについて
>
> 中村(taedium)です。
>
> > > 次に、executeメソッド内のforwardというローカル変数が"success"のような
> > > Actionが返す文字列を参照するので、これを見て処理してください。
> > > HttpServletRequestは、executeメソッドにわたってくるので
> > > それを使ってください。
> >
> > ここの部分がよく分かりませんでした。
> > 恐れ入りますが、もう少し詳しく教えていただけますでしょうか。
>
> PojoProcessActionにNavigateInterceptorのロジックを
> マージすると、前のメールでNavigatePojoProcessActionとした
> クラスのメソッドは、次のようになるのではないでしょうか、
> ということです。
>
> public class NavigatePojoProcessAction extends Action {
>     ...(略)...
>     public ActionForward execute(ActionMapping mapping,
>             ActionForm form,
>             HttpServletRequest request,
>             HttpServletResponse response) throws Exception {
>         ...(略)...
>         String forward = invocation.execute();
>         if(ConstantValues.SUCCESS.equals(forward)){
>             UserInfo userInfo =
>                 (UserInfo) container.getComponent(UserInfo.class);
>             userInfo.movePage(request.getRequestURI());
>         }
>         ...(略)...
>     }
> }
> --
> Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
>



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