Search code examples
struts2annotationsstruts2-convention-plugin

Struts2 token interceptor in annotation


I'm using struts 2.3.1 with token interceptor.How can i use token interceptor in annotation(convension) based Action Class.

here is My struts.xml

<action name="tokenAction" class="roseindia.action.TokenAction">

 <interceptor-ref name="token" />

 <interceptor-ref name="basicStack"/>

 <result name="success" >/success.jsp</result>

 <result name="invalid.token">/index.jsp</result>

can any one please tell annotation based for the same.


Solution

  • It looks to me like this is fairly clear in the documentation here, you need to do this:

    package com.example.actions;
    
    import com.opensymphony.xwork2.ActionSupport; 
    import org.apache.struts2.convention.annotation.Action;
    import org.apache.struts2.convention.annotation.Actions;
    
    @InterceptorRefs({
        @InterceptorRef("token"),
        @InterceptorRef("basicStack")
    })
    @Results({
        @Result(name="success", location="/success.jsp")
        @Result(name="invalid.token", location="/index.jsp")
    })
    public class HelloWorld extends ActionSupport {
      @Action(interceptorRefs={
          @InterceptorRef("token"),
          @InterceptorRef("basicStack")
      })
      public String myActionMethod() {
        //do stuff
        return SUCCESS;
      }
    }