Exception while registering custom interceptor in Struts2

145 views Asked by At

I am new to Struts2 framework. i am working with custom interceptors to write logic for session management in my interceptor class which would be fired before accessing home page.here I have dummy custom interceptor only to check wether it executes or not but it throws exception while registering interceptor class. I dont know that is reason behind it.I just want it to work so that I could write my main logic than. Thanks dev. Here is my code.

index.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <s:form action="login">
            <s:textfield name="name" label="Username"/>
            <s:submit value="Submit"/>
        </s:form>
    </body>
</html>

struts.xml

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <!-- Configuration for the default package. -->
    <package name="default" extends="struts-default">
        
        <interceptors>
            <interceptor name="MyInterceptor" class="MyActions.MyInterceptor"/>
            <interceptor-stack name="mystack">
                <interceptor-ref name="MyInterceptor"/> 
                <interceptor-ref name="defaultStack"/>
            </interceptor-stack>
        </interceptors>
        
        
        
        <action name="default">
            <result>index.jsp</result>
        </action>
        <action name="login" class="MyActions.Login">
          <interceptor-ref name="mystack"/>
        <result name="SUCCESS">success.jsp</result>
        </action>
    </package>
</struts>

MyInterceptor.java


import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;


public class MyInterceptor implements Interceptor {
    
    @Override
    public String intercept(ActionInvocation invoke) throws Exception
    {
         System.out.println("Preprocessing.........");
         String ret=invoke.invoke();
         System.out.println("Post processing.........");
         return ret;
    }

    @Override
    public void destroy() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    @Override
    public void init() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

}

Login.java


import com.opensymphony.xwork2.ActionSupport;

public class Login extends ActionSupport{
    String name;
public String execute()
{
    return "SUCCESS";
}
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    
}

success.jsp


    <%@taglib  prefix="s" uri="/struts-tags" %>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
        </head>
        <body>
            <h1>
               Hellow, <s:property value="name"/>
            </h1>
        </body>
    </html>

0

There are 0 answers