`
javaG
  • 浏览: 555452 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

配置filter拦截forward之类的内部转发

    博客分类:
  • java
阅读更多

在servlet-2.3中,Filter会过滤一切请求,包括服务器内部使用forward转发请求和<%@ include file="/index.jsp"%>的情况。

到了servlet-2.4中Filter默认下只拦截外部提交的请求,forward和include这些内部转发都不会被过滤 ,但是有时候我们需要forward的时候也用到Filter,这样就需要如下配置。

 

 

<filter>
    <filter-name>TestFilter</filtername>
    <filter-class>anni.TestFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>TestFilter</filtername>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
    <dispatcher>EXCEPTION</dispatcher>
</filter-mapping>
 
分享到:
评论

相关推荐

    15_尚硅谷_Filter过滤器_王振国 - 课堂笔记1

    在实现 Filter 过滤器时,需要编写一个类去实现 Filter 接口,实现过滤方法 doFilter(),然后到 web.xml 中去配置 Filter 的拦截路径。下面是一个简单的示例代码: public class AdminFilter implements Filter { ...

    关于action 不能用forward的问题

    在这里,`filter-mapping`元素指定了哪些请求应该被这个过滤器拦截。`url-pattern="/*"`表示所有URL路径都应被该过滤器处理;`dispatcher`元素则表明过滤器将处理两种类型的请求:直接的HTTP请求(`REQUEST`)和...

    urlwriter之配置使用

    为了在应用服务器中启用 `Urlwriter`,你需要将 `urlrewrite.jar` 文件添加到服务器的类路径中,并在 web.xml 配置文件中配置过滤器: ```xml &lt;filter&gt; &lt;filter-name&gt;UrlRewriteFilter&lt;/filter-name&gt; &lt;filter-...

    你真的了解Filter过滤器 ?

    2. **配置Filter**:在`web.xml`文件中,声明你的Filter类以及需要拦截的URL模式。 ```xml &lt;filter&gt; &lt;filter-name&gt;AdminFilter&lt;/filter-name&gt; &lt;filter-class&gt;com.atguigu.filter.AdminFilter&lt;/filter-class&gt; &lt;/...

    Struts2中Servlet的配置

    这个过滤器在`doFilter()`方法中检查每个请求的目标URL(`request.getRequestURI()`),如果目标URL在预定义的`includes`列表中,就使用`RequestDispatcher`的`forward()`方法将请求转发给相应的Servlet处理。...

    深入了解Java中的Filter过滤器

    在`&lt;filter-mapping&gt;`中,`&lt;dispatcher&gt;`元素用于指定Filter拦截资源的方式,常见的值有REQUEST、INCLUDE、FORWARD和ERROR,分别对应不同的请求处理阶段。例如,REQUEST表示用户直接访问,INCLUDE表示通过`...

    stuts的代码实现实例

    在这个例子中,"/hello" 请求将被转发到 HelloWorldAction 类,处理后返回 "success" 前向,显示 "hello.jsp" 页面。 2. **Action 类** - 如 "HelloWorldAction.java",这是 Struts 的核心组件之一,它处理 HTTP ...

    过滤器学习笔记一(Filter教你快速入门)

    2. **FORWARD**: 当请求通过`RequestDispatcher.forward()`被转发时,过滤器会被调用。 3. **INCLUDE**: 当请求通过`RequestDispatcher.include()`被包含时,过滤器也会执行。 4. **ERROR**: 当发生错误并重定向到...

    Struts入门到精通

    - **Struts.xml配置**:这是Struts框架的主要配置文件之一,通常位于项目的`src`目录下。在这个文件中,开发者可以通过`&lt;package&gt;`、`&lt;action&gt;`、`&lt;result&gt;`等标签来定义模块的结构、Action的映射关系以及结果的...

    Servlet-API

    - **请求转发**:使用RequestDispatcher的forward方法,服务器内部跳转,一次请求完成多个资源的处理。 - **重定向**:通过设置响应状态码和Location头实现,浏览器发起新的请求,两次HTTP交互。 6. **会话管理**...

    Struts1、2的工作原理

    6. **结果转发**:execute()方法返回一个ActionForward对象,指示ActionServlet将请求转发给哪个JSP页面,最终生成动态响应并返回给客户端。 接下来,我们转向Struts2的工作原理: 1. **客户端请求**:客户端发送...

    struts2的源码

    源码展示了如何解析这些XML配置,将它们转化为内部的数据结构,以及如何动态加载和更新配置。 8. **异常处理**:Struts2提供了一套完整的异常处理机制,包括全局异常处理和Action级别的异常处理。源码分析能帮助...

    J2EE框架考试试题借鉴.pdf

    文件内容中存在OCR扫描错误,例如"packageAction"应理解为Java包命名的上下文,"nextval"和"currval"是数据库中序列的相关操作,"filter-class"的正确写法应为"filter-class","requestDispatcher"和"forward"的使用...

    Struts2.1学习笔记

    2. **配置Web.xml:** 在项目的`web.xml`文件中,需要配置Struts2的Filter,这是启动Struts2的关键步骤。通常,Filter的名称设置为`struts2`,并指定其对应的类为`org.apache.struts2.dispatcher.ng.filter....

    Birt 与 Struts2 整合

    为了解决这一问题,通常的做法是创建一个自定义的BirtFilter类,这个类继承自javax.servlet.Filter接口,并重写其方法。自定义的BirtFilter需要能够识别哪些请求是针对BIRT报表的,并将这些请求直接转发到BIRT的处理...

    javaweb题库选择+笔试题

    - **解析**:`&lt;filter&gt;`元素用于声明过滤器类,而`&lt;filter-mapping&gt;`元素用于指定哪些资源会被该过滤器拦截。 ### 12. 自定义标签的描述文件配置 - **问题**:自定义标签的描述文件应该如何配置? - **答案**:B. ...

    EmployQuery.zip

    当用户发起请求时,Struts框架会通过前端控制器(Front Controller,即StrutsFilter)拦截请求,然后根据struts-config.xml中的配置转发到相应的Action。Action处理业务逻辑后,通过ActionForward指定下一个页面或...

    struts1和struts2的区别.txt

    - **拦截器(Interceptor)**:处理请求的核心组件之一。 - **Action**:负责具体的业务逻辑处理。 2. **工作流程**: - 用户发起HTTP请求。 - 请求首先经过一系列过滤器(如ActionCleanUpFilter等),然后由...

    自主开发struts

    5. **转发机制**:实现ActionForward,控制请求的流向,决定哪个视图将被渲染。 6. **国际化与本地化**:理解并实现资源文件(如.properties)的使用,支持多语言。 7. **异常处理**:设置全局的异常处理器,统一...

    Java_Servlet教程(繁体)

    在Servlet中,可以使用RequestDispatcher的forward()方法将请求转发到另一个资源,或者使用Response.sendRedirect()方法进行重定向。转发在服务器端完成,而重定向则是在客户端完成。 六、Servlet过滤器 除了...

Global site tag (gtag.js) - Google Analytics