用网上的方法给jsp struts2自定义过滤器写了个过滤器并配置,结果登录都上不去了,一断点,public

struts2的过滤器配置问题_百度知道
struts2的过滤器配置问题
(其实是用smartupload上传文件;filter-name&gt, which initializes the Struts dispatcher needed for this tag. Struts tags are only usable when the request has passed throug*&
&filter-mapping&gt,&lt.action之后可以上传了 但是有些jsp页面会报错 是利用了struts的标签库的 )错误是 The Struts dispatcher cannot be found.
This is usually caused by using Struts tags without the associated filter,被struts过滤掉了 无法上传;/struts2&&lt,所以我改成 ;url-pattern&filter-name&如何配置只让它过滤一种请求之外的所有请求呢;/
&/filter-mapping&/url-pattern&gt一般会过滤所以的请求
我有更好的答案
嗯,你这样是会报错,可以试着我的方法做一下
自己写一个过滤器,extends struts过滤器,然后在你自己的过滤器里写你不需要过滤的东西.代码如下:
package com.alyit.
import java.io.IOE
import java.util.ArrayL
import java.util.L
import javax.servlet.FilterC
import javax.servlet.ServletE
import javax.servlet.ServletR
import javax.servlet.ServletR
import javax.servlet.http.HttpServletR
import org.apache.struts2.dispatcher.FilterD
public class ExtendStrutsFilter extends FilterDispatcher
// 自定义的struts过滤器
public void doFilter(ServletRequest req,...
你在这个配置文件改是不能过滤的,因为它只是个XML文本文件;如果你要细化过滤你想要的东西,必须键一个过滤器的java文件,然后在里面写判断才能实现。
其他类似问题
为您推荐:
struts2的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁9682人阅读
JSP学习(24)
在struts.xml中添加如下配置:
&!-- 配置全局拦截器 --&
&package name=&all& extends=&struts-default&&
& & & & &interceptors&
& & & & & & &!-- 定义权限控制拦截器 --&
& & & & & & &interceptor name=&authority&
& & & & & & & & class=&akai.cost.ms.base.AuthInterceptor& /&
& & & & & & &!-- 定义一个包含权限控制的拦截器栈 --&
& & & & & & &interceptor-stack name=&mydefault&&
& & & & & & & & &interceptor-ref name=&defaultStack& /&
& & & & & & & & &interceptor-ref name=&authority& /&
& & & & & & &/interceptor-stack&
& & & & &/interceptors&
& & & & &!-- 定义默认拦截器 --&
& & & & &default-interceptor-ref name=&mydefault& /&
& & & & &!-- 定义全局处理结果 --&
& & & & &global-results&
& & & & & & &!-- 逻辑名为login的结果,映射到/login.jsp页面 --&
& & & & & & &result name=&login&&/login.jsp&/result&
& & & & &/global-results&
& & &/package&
使用方法:其他包继承这个包名就可以了
&package name=&abc& extends=&all& namespace=&/&&
附:拦截器类
package akai.cost.ms.
import javax.servlet.http.HttpS
import org.apache.struts2.ServletActionC
import com.opensymphony.xwork2.A
import com.opensymphony.xwork2.ActionI
import com.opensymphony.xwork2.interceptor.AbstractI
public class AuthInterceptor extends AbstractInterceptor{
public String intercept(ActionInvocation invocation) throws Exception {
HttpSession session = ServletActionContext.getRequest().getSession();
String userName = (String)session.getAttribute(&System_UserName&);
if(userName == && || userName == null){//错误,回到登录界面
return Action.LOGIN;
return invocation.invoke();
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:303792次
积分:3926
积分:3926
排名:第5101名
原创:75篇
评论:120条&&国之画&&布布分享&&&& &&&&
版权所有 京ICP备号-2
迷上了代码!

我要回帖

更多关于 struts2自定义过滤器 的文章

 

随机推荐