`

禁用激活器servlet

阅读更多

 禁用激活器servlet
     在对资源应用过滤器时,可通过指定要应用过滤器的URL模式或servlet名来完成。如果提供servlet名,则此名称必须与web.xml的 servlet元素中给出的名称相匹配。如果使用应用到一个serlvet的URL模式,则此模式必须与利用web.xml的元素servlet- mapping指定的模式相匹配。但是,多数服务器使用“激活器servlet”为servlet体统一个缺省的URL:http: //host/WebAppPrefix/servlet/ServletName。需要保证用户不利用这个URL访问servlet(这样会绕过过滤器 设置)。
例如,假如利用filter和filter-mapping指示名为SomeFilter的过滤器应用到名为SomeServlet的servlet,则如下:

  <filter>
      <filter-name>SomeFilter</filter-name>
      <filter-class>somePackage.SomeFilterClass</filter-class>
    </filter>
    <!-- ... -->
    <filter-mapping>
      <filter-name>SomeFilter</filter-name>
      <servlet-name>SomeServlet</servlet-name>
    </filter-mapping>

 

接着,用servlet和servlet-mapping规定URL   http://host/webAppPrefix/Blah 应该调用SomeSerlvet,如下所示:

 

  <filter>
      <filter-name>SomeFilter</filter-name>
      <filter-class>somePackage.SomeFilterClass</filter-class>
    </filter>
    <!-- ... -->
    <filter-mapping>
      <filter-name>SomeFilter</filter-name>
      <servlet-name>/Blah</servlet-name>
    </filter-mapping>

 

现在,在客户机使用URL   http://host/webAppPrefix/Blah 时就会调用过滤器。过滤器不应用到
http://host/webAppPrefix/servlet/SomePackage.SomeServletClass
尽管有关闭激活器的服务器专用方法。但是,可移植最强的方法时重新映射Web应用钟的/servlet模式,这样使所有包含此模式的请求被送到相同的 servlet中。为了重新映射此模式,首先应该建立一个简单的servlet,它打印一条错误消息,或重定向用户到顶层页。然后,使用servlet和 servlet-mapping元素发送包含/servlet模式的请求到该servlet。程序清单9-1给出了一个简短的例子。

程序清单9-1 web.xml(重定向缺省servlet URL的摘录)


   <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app PUBLIC
         "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
         "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <!-- ... -->
    <servlet>
      <servlet-name>Error</servlet-name>
      <servlet-class>somePackage.ErrorServlet</servlet-class>
    </servlet>
    <!-- ... -->
    <servlet-mapping>
      <servlet-name>Error</servlet-name>
      <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping>
    <!-- ... -->
    </web-app>

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    servlet过滤器Filter入门

    * 禁用激活器 servlet。 4. Filter 接口 Filter 接口包含三个方法:doFilter、init 和 destroy。 * doFilter 方法包含主要的过滤代码。 * init 方法建立设置操作。 * destroy 方法进行清楚。 5. doFilter 方法 ...

    JAVA web过滤器Filter学习资料

    最后,禁用激活器 servlet,防止用户利用缺省 servlet URL 绕过过滤器设置。 在建立过滤器时,需要实现 javax.servlet.Filter 接口,该接口包含三个方法:doFilter、init 和 destroy。doFilter 方法是过滤器的核心...

    Java Web实现session过期后自动跳转到登陆页功能【基于过滤器】

    五、禁用激活器servlet 防止用户利用缺省servlet URL绕过过滤器设置。 六、SessionFilter实现 下面是一个简单的SessionFilter实现: ```java package com.base.filter; import java.io.IOException; import ...

    手写自己的Springboot, 从Servlet容器选择彻底理解自动配置

    我们需要创建类似`@ConditionalOnClass`或`@ConditionalOnBean`的自定义条件注解,以便根据类路径中的类或存在的bean来决定是否激活某个配置。 3. **自动配置类**:接下来,我们需要编写一系列的配置类,每个类都...

    用web.xml控制Web应用的行为

    - **全局禁止激活器:Tomcat**:在Tomcat服务器的全局配置中,可以禁用默认的`*Servlet`激活器。 5. **初始化和预装载servlet与JSP页面** - **分配servlet初始化参数**:使用`&lt;init-param&gt;`元素设置servlet的初始...

    WebLogic全部性能参数中文解释

    - **RestartsTotalCount**:返回自集群上次激活以来此服务器重启的总次数。 - **ListenPort**:返回此服务器监听连接的端口号。 ##### Servlet Runtime - **ExecutionTimeAverage**:返回自创建以来,所有Servlet...

    Java Web程序设计(04112560)--实验7.pdf

    在Java Web中,过滤器用于在请求到达目标Servlet之前或之后处理请求和响应。例如,ForceNoCacheFilter的作用是防止浏览器缓存页面,以确保每次用户访问时都能获取最新的内容。关键代码通常会包含设置HTTP响应头来...

    基于java的供求信息网

    管理员角色拥有最高权限,可以对用户进行管理,包括注册、激活、禁用账户等。此外,管理员还可以发布新的供求信息,这些信息可能包含产品或服务的详细描述、价格、联系信息等,并有权设定某些信息为付费可见,以此来...

    Tomcat在linux下的安装

    - **激活ROOT应用**:默认情况下,ROOT应用是禁用的。要启用它,编辑`/usr/local/tomcat/conf/server.xml`文件,取消`&lt;Context&gt;`标签的注释。 - **激活Invoker Servlet**:同样,如果需要使用Invoker Servlet,...

    设计模式以及用户登陆注册页面

    5. **状态模式**:用户账户的状态(如未激活、已激活、禁用)可以通过状态模式来管理,每个状态对应一个类,封装了与该状态相关的操作。 6. **观察者模式**:当用户完成注册或登录时,可能需要通知其他系统组件(如...

    ZK 6.5.0 Configuration Reference

    - **org.zkoss.zk.ui.activate.wait.retry.timeout**: 设置激活操作的等待重试超时时间。 - **org.zkoss.zk.ui.composer.autowire.zscript**: 控制是否自动装配 ZScript 组件。 - **org.zkoss.zk.ui.composer....

    Linux系统上安装JDK和Tomcat

    - **激活ROOT Context**:默认情况下,ROOT Context可能被禁用。编辑`tomcat/conf/server.xml`文件,移除对ROOT Context的注释: ```xml ``` - **激活InvokerServlet**:在`tomcat/conf/web.xml`中激活...

    JAVAJsp的网上书店系统

    - 注册会员管理:管理用户账户,如注册、激活、禁用等。 - 图书订购管理:处理用户订单,跟踪订单状态。 4-2 前台界面功能 - 图书搜索:根据关键词、作者等条件搜索图书。 - 查看图书详细:显示图书详细信息,如...

    Spring4JAR包、Spring4API,Spring4源码

    新增的`@Profile`注解允许我们根据环境条件激活或禁用特定的bean。同时,`@Async`注解的改进使得方法可以异步执行,提高了系统性能。 在源码层面,Spring4进行了大量的重构和性能优化。例如,对反射机制的优化,...

    酒店预订管理系统

    管理员则可以管理所有用户信息,包括注册、激活、禁用等操作。 6. **权限控制**:通过角色权限机制,系统可以区分普通用户和管理员的权限。管理员具有更多的操作权限,如后台管理功能,而普通用户只能进行预订和...

    myeclipse注册码

    MyEclipse特别适合Java Web应用程序的开发,支持JSP、Servlet、Struts、Hibernate、Spring等多种开发框架。由于其强大的功能和易用性,MyEclipse在Java开发者中非常受欢迎。 #### 二、MyEclipse注册与授权 1. **...

    Spring3.2.6版本jar包

    - 引入了`@Profile`注解,允许根据特定的环境条件激活或禁用配置。 - 对数据访问层进行了优化,如JDBC模板的改进和JPA2.1的支持。 9. **测试**: - Spring Test模块提供了测试支持,包括Mock对象和Web应用测试...

    博客网站(用Myeclipse开发用java语言实现)

    4. 用户管理:包括注册、激活、禁用用户的操作,以及处理用户的反馈和问题。 在技术实现上,这个博客网站可能采用了MVC(Model-View-Controller)设计模式,使得业务逻辑、数据处理和用户界面分离,提高了代码的...

Global site tag (gtag.js) - Google Analytics