Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to track the session for all URLs in Struts 2
    primarykey
    data
    text
    <p>This is my <code>Interceptor</code> code. My aim is to maintain the session for all the URL, once the logout is done user can not able to go for any URL. </p> <pre><code>import java.util.Map; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.Interceptor; public class AuthenticationInterceptor implements Interceptor { /** * */ private static final long serialVersionUID = 1L; public void destroy() { // TODO Auto-generated method stub System.out.println("inside the destroy() of interceptor"); } public void init() { // TODO Auto-generated method stub System.out.println("inside the init() of interceptor of new"); } public String intercept(ActionInvocation ai) throws Exception { // TODO Auto-generated method stub System.out.println("inside the interceptor()......new"); if(ai.getAction() instanceof LogoutAction){ Map session = ai.getInvocationContext().getSession(); if (session.get("user")!=null){ System.out.println("inside logout of the session"); return ai.invoke(); } else{ return "login"; } } else return ai.invoke(); } </code></pre> <p>this is my logout action code:</p> <pre><code> package com.uttara.reg; import java.util.Map; import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionSupport; public class LogoutAction extends ActionSupport implements SessionAware { private Map session; public void setSession(Map s) { session = s; } @Override public String execute() throws Exception { System.out.println("inside execute() of LA"); if(session.get("user")!=null){ session.remove("user"); return "ridirect"; } return "failure"; } } </code></pre> <p>this is my another action file once the login has done user will goin to register the user my question is how to check the session here </p> <pre><code>import com.opensymphony.xwork2.ActionSupport; public class RegisterAction extends ActionSupport implements SessionAware { private static final long serialVersionUID = 1L; public RegisterAction() { System.out.println("inside the Register action const."); } private RegBean bean; private Map session; public RegBean getBean() { return bean; } public void setBean(RegBean bean) { this.bean = bean; } @Override public String execute() throws Exception { System.out.println("inside execute method"); System.out.println(bean); Model m = new Model(); String result = m.register(bean); if(result.equals(SUCCESS)) return SUCCESS; else{ addActionError(getText(result)); return "failure"; } } @Override public void validate(){ System.out.println("inside validate method"); } public void setSession(Map session) { // TODO Auto-generated method stub System.out.println("inside setSession"); this.session = session; } </code></pre> <p>}</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload