Struts2页面重定向/转发问题

时间:2011-06-08 16:18:54

标签: url redirect struts2 forward

有谁能告诉我如何使用Struts转发或重定向页面? 我正在检查每个jsp中的会话是否为空,并且如果为null则要重定向。我可以使用简单的jsp:forward或response.sendRedirect()执行此操作,但我想重定向到我在struts.xml中声明的struts2操作。我尝试将动作名称放在上面提到的标签和方法中,但它没有用。

if(session.getAttribute("user")!=null)
    response.sendRedirect("loginAction");

无论如何都要这样做。我不能直接调用.jsp,因为我在我的web.xml中为* .jsp url模式添加了一个安全约束。所以我想要使用操作向前或重定向。有什么帮助吗?

2 个答案:

答案 0 :(得分:3)

最好在FilterInterceptor中进行检查。 This answer对类似的问题可能会有所帮助。

答案 1 :(得分:0)

首先,也许您更愿意在拦截器(eg)中检查授权使用(登录)

其次,要在Struts2中重定向到struts2操作,只需使用适当的result即可。如果没有必要,访问较低级别的对象(与servlet相关)是不好的做法。

第三,关于I can't call to a .jsp directly:你不能重定向到一个jsp url(因为你的架构中不能从浏览器中接收jsp),但是你可以调用它,也就是说,显示login.jsp回应你的行动。这很简单,只有当您希望用户在要求身份验证时在浏览器中看到一些“... login.do”网址时才有目标。