在Servlet2.4以下的版本中 WEB组件forward()到另外一个 WEB组件的时候是不执行filter.最近项目中既需要forward()的方式.又需要forward请求访问filter.查阅了一下google.发现Servlet2.4以上版本的可以配置filter的规则,如下:
1,只有当request直接来自客户,过滤器才生效,对应为REQUEST条件。
2,只有当request被一个请求分发器使用forward()方法转到一个Web构件时(采用或定义),对应称为FORWARD条件。
3,类似地,只有当request被一个请求分发器使用include()方法转到一个Web构件时(采用或定义),对应称为INCLUDE条件。
4,只有当request被一个请求分发器使用“错误信息页”机制方法转到一个Web构件时,对应称为ERROR条件。
·第五种过滤器作用的条件可以是上面四种条件的组合。
然后在web.xml中指定某个filter的dispather代码如下:
<filter-mapping>
<filter-name>cache</filter-name>
<url-pattern>/portal/**</url-pattern>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
这样.不管是forward的请求还是request的请求.都会被这个filter过滤..
分享到:
相关推荐
Servlet 2.4和3.0规范是由Sun Microsystems(后来被Oracle收购)发布的,定义了Servlet API的行为和开发者需要遵循的接口。这两个版本的规范引入了许多重要的改进和新特性,为开发人员提供了更强大的功能和更高的...
Servlet 2.4 API是Java Servlet规范的第三个版本,发布于2003年,它在Servlet 2.3的基础上增加了新的特性和改进。 二、Servlet生命周期 Servlet的生命周期包括加载、初始化、服务、销毁四个阶段。在Servlet 2.4中,...
- Servlet-2.4 规范对 API 进行了扩展,增加了新的接口和类,提供了更多的编程模型和工具。 #### 三、重要概念与接口 - **Servlet**: 定义了 Web 应用程序中的服务器端组件,用于处理客户端的 HTTP 请求。 - **...
这个压缩包文件“servlet2.4doc”很可能包含了该版本Servlet API的官方文档,用于帮助开发者理解和使用Servlet 2.4特性。 **Servlet基础** Servlet是一个Java类,它扩展了服务器的功能,能够处理HTTP请求并返回响应...
这个"Servlet2.4-1帮助文档(英文)"的CHM文件很可能是官方发布的API文档,包含了Servlet 2.4规范的所有类、接口、方法和注解的详细说明,是学习和开发Servlet应用的重要参考资料。通过查阅这个文档,开发者可以深入...
1. **过滤器(Filter)**:过滤器允许开发者在请求到达目标Servlet之前或者在响应返回给客户端之后对请求或响应进行拦截和处理。在Servlet 2.4中,过滤器链的概念被引入,使得多个过滤器可以按照一定的顺序执行。 2...
#### Servlet 2.4 规范关键特性 ##### 1. **过滤器(Filter)机制** Servlet 2.4 引入了过滤器机制,允许开发者在请求到达目标资源之前或响应返回客户端之后进行预处理或后处理操作。这为实现如身份验证、编码转换、...
10. **Servlet 2.4版本特性** Servlet 2.4版本是在2003年发布的,相比于早期版本,它引入了以下改进: - 支持注解(Annotation),简化了Servlet、过滤器和监听器的配置。 - 引入了统一的表达式语言(EL,...
1. **Filter**:Servlet 2.4引入了Filter的概念,允许开发者在请求到达目标Servlet之前或之后对其进行拦截和处理,实现如登录检查、内容编码转换等功能。 2. **Listener**:增强了事件监听器,如...
- 引入过滤器(Filter)概念,允许开发者在请求到达Servlet之前进行拦截和处理,实现如权限控制、字符编码转换等功能。 - 支持Session跟踪,使得服务器可以跨多个请求识别用户。 3. **Servlet 2.4**: - 发布于...
Servlet 2.5是Java Servlet规范的一个版本,它在2006年发布,是对Servlet 2.4的升级,引入了一些新特性以提升Web应用的开发效率和灵活性。在这个源码包中,你将能够深入理解Servlet的工作原理以及如何在实际开发中...
Java Servlet 3.0是Servlet规范的一个重要版本,引入了许多新特性。例如,不再需要web.xml来配置Servlet,而是支持注解(@WebServlet)进行声明式配置。此外,它还支持异步处理,使得Servlet可以在不阻塞线程的情况...
Servlet 2.5是Java Servlet规范的一个版本,它在2006年发布,是对Servlet 2.4的升级,提供了许多新特性和改进。这个版本的Servlet规范是基于Java EE 5平台的,旨在提高Web应用程序的开发效率和可维护性。下面将详细...
#### 二、Servlet 2.4的新特性 **2.1 HTTP/1.1与J2SE 1.3支持** - Servlet 2.4版本要求Servlet必须支持HTTP/1.1协议,并且可以在J2SE 1.3环境中运行。 **2.2 ServletRequest增强** - **查询客户端连接**:`...
3. **Servlet-API 2.4**:发布于2002年,这个版本对Filter和Listener的API进行了增强,增加了更多预定义的监听器接口。同时,它改进了部署描述符(web.xml)的结构,使其更加模块化和可扩展。此外,2.4版还支持了...
Servlet是在J2EE(Java 2 Platform, Enterprise Edition)环境下运行的Web容器内的Java应用程序,具备高性能、可移植性和功能强大的特性。 Servlet的优点主要体现在以下几个方面: 1. **执行效率高**:Servlet支持...
此版本在Servlet 2.4的基础上进行了一些增强和改进。主要特点包括: 1. **注解支持**:Servlet 2.5开始支持注解(Annotation),开发者可以使用`@WebServlet`、`@WebFilter`和`@WebListener`等注解来声明Servlet、...
3. Servlet 2.4(2003年11月):此版本主要增加了对Annotation的支持,使得Servlet、Filter和Listener可以使用注解进行声明式配置,简化了部署过程。 4. Servlet 2.5(2005年9月):随着Java EE 5的发布,Servlet ...
除了基本的功能之外,Servlet 2.4及更高版本还支持以下高级特性: - **Dispatcher Types**:过滤器可以根据不同的请求类型(如REQUEST、FORWARD、INCLUDE或ERROR)进行配置。 - **Filter Chain**:多个过滤器可以按...
通过以上步骤,你可以成功地创建并部署一个简单的Servlet,这只是Servlet技术的基础。实际上,Servlet可以与其他Java EE组件(如JSP、EJB)配合使用,构建更复杂的Web应用程序,实现用户认证、会话管理、数据库连接...