struts2中登陆过滤器取得request实例与传参

public String intercept(ActionInvocation invocation) throws Exception {
		ActionContext ctx = invocation.getInvocationContext();     
		HttpServletRequest request = (HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);
		
		
		System.out.println(request.getParameter("url"));
		System.out.println(request.getRequestURI());
		System.out.println(request.getServletPath()); 
		
		
		
		
		String invocationAction=invocation.getAction().getClass().getName();		
		String invocationName=invocationAction.substring(invocationAction.lastIndexOf(".")+1,invocationAction.length());
		if(invocationName.toLowerCase().endsWith("scope"))
		{		
			if(invocation.getInvocationContext().getSession().get("user")==null)
				return BaseAction.USER;
		}
		if(invocationName.toLowerCase().endsWith("stage"))
		{
			if(invocation.getInvocationContext().getSession().get("operator")==null)
				return Action.LOGIN;
		}
		return invocation.invoke();
	}

传参通过

publicStringintercept(ActionInvocationinvocation)throwsException

  • {
  • ActionContextctx=invocation.getInvocationContext();
  • Stringuser=(String)ctx.getSession().get("username");
  • System.out.print(user);
  • if(user!=null)
  • {
  • returninvocation.invoke();
  • }
  • System.out.print(user);
  • ctx.put("tip","您还没有登录,请登陆系统");
  • returnAction.LOGIN;
  • }

    即可在页面中得到

  • 你可能感兴趣的:(struts2)