JBoss4 应用服务器Web开发人员参考手册(1):Tomcat服务

    技术2022-05-11  21

    Tomcat 5.5是Apache最近发布的Java servlet容器(译者注:目前最新版本为6.0),它支持Servlet 2.4和JSP 2.0规范。Tomcat通过deploy目录中的 jbossweb-tomcat-55.sar以可部署的服务形式分发,因为采用目录展开的形式进行服务,所以很方便进行检查和更新被嵌入的Tomcat实例的配置。

    主要的service文件是META-INF/jboss-service.xml。通过它可以对org.jboss.web.tomcat.tc5.Tomcat5 MBean进行配置,从而 控制Tomcat。它的配置属性包括:

    DefaultSecurityDomain: 它表示WAR包中jboss-web.xml文件在没有显式指定security-domain 时所需使用的JAAS安全域;

    Java2ClassLoadingCompliance: 它用来启用Java2中标准的双亲委托类加载模型,而不是首先加载WAR中的servlet模型。缺省情况下它的值为true,否则从包括客户端JAR包和被EJB使用类的WAR包中加载时,将会导致类加载冲突;如果通过将该标志设置为false启用了servlet类加载模型,就必须重新组织待部署的包来避免在部署过程中出现类被重复加载出现冲突。

    UseJBossWebLoader: 它用来表示Tomcat使用JBoss的统一类加载器作为Web应用的类加载器。缺省值为true(译者注:实际上为false),这意味着WAR包中WEB-INF/classes和WEB-INF/lib目录里的类将被加载到缺省的共享类加载器仓库中。通过它,可以实现类和资源在Web应用之间共享。如果这不是你想要的情况,可以通过将该属性设置为false来避免这种行为

    LenientEjbLink: 用来指定解析ejb-link出现错误时,是否应该忽略错误,尝试通过jboss-web.xml中的jndi-name来访问。 缺省值为true。

    ManagerClass: 用来指定当Web应用标志为distributable时,复制web应用状态的session manager类。目前仅提供了一个session manager实现:org.jboss.web.tomcat.tc5.session.JBossCacheManager,它使用JBossCache跟踪分布的状态。

    SubjectAttributeName: 用来指定request中用来存储JAAS subject的属性名。它没有缺省值,也就是说在缺省情况下request中没有subject值。

    SessionIdAlphabet: 用来指定创建session ID的字母集合。它必须由65个不同的字符组成。

    SnapshotMode: 用来指定集群环境中的快照模式:instant或interval。在instant模式中,集群中session的变化将会在修改发生时立即传播出去。在interval模式中,所有的修改将会根据设置SnapshotInterval定期传播出去。

    SnapshotInterval: 用来以毫秒为单位设置interval快照模式中的快照间隔,缺省值为1000ms,也就是1秒;

    UseLocalCache: 用来指定当存在本地HTTP session时是否需要使用。当设置为true时,本地存在的HTTP session值将会被使用,更新将会被复制,但是更新其它节点上的相同session时不会更新本地的session值。该模式仅在故障转移时使用。当设置为false时,将使用从分布式缓存中获得的session值,该模式在负载均衡时使用;缺省为true。

    UseJK: 用来指定使用MOD_JK(2)和JvmRoute来实现负载均衡和session粘附。如果设置为true,将会插入JvmRouteFilter来拦截所有的请求,当检测到故障时就会替换JvmRoute,这还需要设置引擎定义文件server.xml中的JvmRoute属性。缺省值为false。

    Domain: 用来指定Tomcat注册新的MBean时使用的上级JMX域,缺省域为jboss.web。

    SecurityMangerService: 用来指定Tomcat使用的JAAS安全管理其,缺省情况下为jboss.security:service=JaasSecurityManager.


    最新回复(0)