Hi Paul,

I placed the break points in struts code. But the control is not redirected
to struts code. its throws error in interceptor code.\


Thanks
Krishnaraj


On Fri, Jun 13, 2014 at 6:58 PM, Paul Benedict <pbened...@apache.org> wrote:

> Go set a breakpoint in Struts where the ISE is being thrown and see what
> condition is being tested. If possible, take some time to determine when
> that condition is being set before your invocation.
>
>
> Cheers,
> Paul
>
>
> On Fri, Jun 13, 2014 at 8:25 AM, Krishnaraj A <
> akrajmscjavaquest...@gmail.com> wrote:
>
> > Hi Team,
> >
> >
> > Is any help for the above issue
> >
> > Thanks
> > Krishna raj
> >
> >
> > On Thu, Jun 12, 2014 at 9:05 PM, Krishnaraj A <
> > akrajmscjavaquest...@gmail.com> wrote:
> >
> > > Hi Dave,
> > >
> > > I added my struts code.
> > >
> > > Junit Code:
> > >
> > > public class AdminValidation extends StrutsTestCase  {
> > >
> > >     @Test
> > >     public void testUserNameErrorMessage() throws Exception {
> > >
> > >         HttpSession session = request.getSession();
> > >         UserVO uservo1 =new UserVO();
> > >         uservo1.setUserMailId("akrajmscjavaquest...@gmail.com");
> > >         uservo1.setReturnedStatus("admin");
> > >         uservo1.setAccessLevel("1293");
> > >         uservo1.setIntranetId("Krishnaraj");
> > >         uservo1.setSuperAdmin(true);
> > >         uservo1.setShowRegContact(false);
> > >         session.setAttribute("user", uservo1);
> > >         ActionProxy proxy = getActionProxy("/MainAdminPage.action");
> > >         ActionContext context
> > > =proxy.getInvocation().getInvocationContext();
> > >         Map<String,Object> session = new HashMap<String,Object>();
> > >         session.put("user", uservo1);
> > >         context.setSession(session);
> > >          String result = proxy.execute();
> > >          assertEquals("Result returned form executing the action was
> not
> > > success but it should have been.", "success", result);
> > >     }
> > > }
> > >
> > > Struts.xml code:
> > >
> > > <interceptors>
> > > <interceptor name="printMsgInterceptor"
> > > class="com.interceptor.UserValidation"></interceptor>
> > > <interceptor name="sessionClearInterceptor"
> > > class="com.interceptor.SessionClearInterceptor"></interceptor>
> > > <interceptor-stack name="newStack">
> > > <interceptor-ref name="printMsgInterceptor" />
> > > <interceptor-ref name="sessionClearInterceptor" />
> > > <interceptor-ref name="defaultStack" />
> > > </interceptor-stack>
> > > </interceptors>
> > >
> > >
> > > <action name="MainAdminPage" class="com.action.MainAdminAction">
> > >     <interceptor-ref name="newStack" />
> > >     <result>/MainAdmin.jsp</result>
> > >     <result name="Login_page">/Login.jsp</result>
> > > </action>
> > >
> > > UserValidation.java code:
> > >
> > > public class UserValidation extends AbstractInterceptor implements
> > > StrutsStatics {
> > >
> > >
> > >     private static final long serialVersionUID = 1L;
> > >
> > >     public void init() {
> > >
> > >     }
> > >
> > >     public void destroy() {
> > >     }
> > >
> > >     public String intercept(ActionInvocation invocation) throws
> > Exception {
> > >
> > >         final ActionContext context =
> invocation.getInvocationContext();
> > >         String str =invocation.getAction().getClass().getSimpleName();
> > >         Map<String,Object> session =context.getSession() ;
> > >         HttpServletRequest request=(HttpServletRequest)
> > > context.get(HTTP_REQUEST);
> > >         HttpServletResponse response=(HttpServletResponse)
> > > context.get(HTTP_RESPONSE);
> > >         String str1 =request.getRequestedSessionId();
> > >
> > >         request.setCharacterEncoding("UTF-8");
> > >         final UserVO uservo =(UserVO) session.get("user");
> > >             String userMailId;
> > >             if(uservo !=null){
> > >             String mailID=uservo.getUserMailId();
> > >             if(mailID != null){
> > >                 System.out.println("Success");
> > >             }
> > >         }
> > >
> > >         else {
> > >             return "login";
> > >
> > >         }
> > >         response.setHeader("Pragma","no-cache");
> > >         response.setHeader("Cache-Control","no-store");
> > >         response.setHeader("Expires","0");
> > >         response.setDateHeader("Expires",-1);
> > >         response.setCharacterEncoding("UTF-8");
> > >         return invocation.invoke();
> > >
> > >     }
> > > }
> > >
> > > I debug the application by placing the break point. When the control go
> > to
> > > " return invocation.invoke();" it throws error.
> > >
> > >  java.lang.
> > > IllegalStateException: Action has already executed
> > >
> > >
> > > Thanks,
> > > Krishnaraj
> > >
> > >
> > >
> > >
> > > On Thu, Jun 12, 2014 at 8:45 PM, Dave Newton <davelnew...@gmail.com>
> > > wrote:
> > >
> > >> Without knowing what's in your interceptor stack it's impossible to
> > help.
> > >>
> > >> Dave
> > >>
> > >>
> > >> On Thu, Jun 12, 2014 at 11:11 AM, Krishnaraj A <
> > >> akrajmscjavaquest...@gmail.com> wrote:
> > >>
> > >> > Hi Team,
> > >> >
> > >> > Iam new to using Struts2 unit testing. Iam using the Struts 2 JUnit
> > >> plugin
> > >> > <http://struts.apache.org/2.3.1.2/docs/junit-plugin.html>. The
> normal
> > >> > actions which is working fine. But I have issue when I am testing
> the
> > >> > action which has interceptor.
> > >> >
> > >> > <action name="MainAdminPage" class="com.action.MainAdminAction">
> > >> >             <interceptor-ref name="newStack" />
> > >> >             <result>/MainAdmin.jsp</result>
> > >> >             <result name="Login_page">/Login.jsp</result>
> > >> > </action>
> > >> >
> > >> > When I start testing the control goes to interceptor and check all
> the
> > >> > validation.
> > >> > when it invoke "return invocation.invoke();". it throws error.
> > >> >  java.lang.IllegalStateException: Action has already executed
> > >> >
> > >> > I am not able to get the solution for the above problem. Can any one
> > >> help
> > >> > me in this problem to find the solution. Thanks in advance.
> > >> >
> > >> > Thanks,
> > >> > Krishna raj
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >> e: davelnew...@gmail.com
> > >> m: 908-380-8699
> > >> s: davelnewton_skype
> > >> t: @dave_newton <https://twitter.com/dave_newton>
> > >> b: Bucky Bits <http://buckybits.blogspot.com/>
> > >> g: davelnewton <https://github.com/davelnewton>
> > >> so: Dave Newton <http://stackoverflow.com/users/438992/dave-newton>
> > >>
> > >
> > >
> >
>

Reply via email to