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

吉村 実 [E-MAIL ADDRESS DELETED]
2009年 6月 15日 (月) 19:59:18 JST


よしむらです。

すいません、お手数おかけしております。

下記、「NavigatePojoProcessAction」のすべてに
なりますが、★のところにブレークポイントを設定しても
止まらず、このクラスが呼ばれる前で止まってしまって
いるようです。


【NavigatePojoProcessAction】
public class NavigatePojoProcessAction extends Action {

	private ClassRegister classRegister;

	public void setClassRegister(ClassRegister classRegister) {
		this.classRegister = classRegister;
	}

	private List pojoCommands = new ArrayList();

	public void addPojoCommand(PojoCommand pojoCommand) {
		this.pojoCommands.add(pojoCommand);
	}

	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());
	    }
	    if (forward != null) {
	        ActionForward actionForward = mapping.findForward(forward);
	        if (actionForward != null) {
	            return actionForward;
	        }
	        throw new ActionForwardNotFoundException(forward);
	    } else {
	        return null;
	    }
	}

}

 

> -----Original Message-----
> From: [E-MAIL ADDRESS DELETED] 
> [mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of 
> Toshihiro Nakamura
> Sent: Monday, June 15, 2009 7:49 PM
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:17767] Re:s2struts.diconについて
> 
> 中村(taedium)です。
> 
> > ご教授いただいたように下記の通り、
> > 修正したのですが、ログが以下の状態で止まり、
> > ログイン画面が表示されなくなってしまいました。
> 
> NavigatePojoProcessActionで
> 元のコードを削りすぎじゃないでしょうか?
> 単純にマージすると次のようになると思います。
> 
>     String forward = invocation.execute();
>     if(ConstantValues.SUCCESS.equals(forward)){
>         UserInfo userInfo = 
>             (UserInfo) container.getComponent(UserInfo.class);
>         userInfo.movePage(request.getRequestURI());
>     }
>     if (forward != null) {
>         ActionForward actionForward = mapping.findForward(forward);
>         if (actionForward != null) {
>             return actionForward;
>         }
>         throw new ActionForwardNotFoundException(forward);
>     } else {
>         return null;
>     }
> --
> Toshihiro Nakamura
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 
> 



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