struts2在web.xml中入口过滤器的配置

MINJI 2011-06-08 01:10:07
struts2在web.xml中入口过滤器一般的配置如下

<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

这里的<url-pattern>/*</url-pattern>过滤一切的请求,能否设置某种请求例外,不被struts2过滤?如*.do,能设置例外吗?谢谢!
...全文
255 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
amtrc 2011-06-09
  • 打赏
  • 举报
回复
在filter中些吧
安特矮油 2011-06-08
  • 打赏
  • 举报
回复
用过滤器或者拦截器判断吧
july27 2011-06-08
  • 打赏
  • 举报
回复
在filter下面定义初始参数
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>common.LoginFilter</filter-class>
<init-param>
<param-name>login</param-name>
<param-value>/login.jsp</param-value>
</init-param>
<init-param>
<param-name>access</param-name>
<param-value>/login.jsp;error.jsp</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>

在过滤器里面判断就好了
public class LoginFilter implements Filter {
private String login;
private String access;
private List<String> list = new ArrayList<String>();

@Override
public void destroy() {
// TODO Auto-generated method stub

}

@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) arg0;
HttpServletResponse res = (HttpServletResponse) arg1;
if (!list.contains(req.getServletPath())
&& null == req.getSession().getAttribute("loginname")) {
res.sendRedirect(req.getContextPath() + login);
return;
} else {
arg2.doFilter(arg0, arg1);
}
}

@Override
public void init(FilterConfig arg0) throws ServletException {
this.login = arg0.getInitParameter("login");
this.access = arg0.getInitParameter("access");
String[] s = access.split(";");
for (int i = 0; i < s.length; i++) {
list.add(s[i]);
}
}
swoky 2011-06-08
  • 打赏
  • 举报
回复
可以在struts.xml中加个常量
<constant name="struts.action.excludePattern" value="/xx/.*,/yyy/test/.*"></constant>

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧