Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat';上下文层次结构_Java_Tomcat_Servlets - Fatal编程技术网

Java Tomcat';上下文层次结构

Java Tomcat';上下文层次结构,java,tomcat,servlets,Java,Tomcat,Servlets,我知道tomcat可以用几种不同的方式定义上下文。对于这个特定的问题,我在$CATALINA_HOME/conf/context.xml中定义了一个主上下文,在每个模块的/META-INF/context.xml中定义了每个模块的上下文。我的问题是,如果我在主上下文中设置了某些未在每个模块上下文中设置/重写的参数,那么这些参数在加载每个模块上下文时是否仍然有效 例如: |----$CATALINA_HOME/conf/context.xml (i have logAbandoned=true s

我知道tomcat可以用几种不同的方式定义上下文。对于这个特定的问题,我在$CATALINA_HOME/conf/context.xml中定义了一个主上下文,在每个模块的/META-INF/context.xml中定义了每个模块的上下文。我的问题是,如果我在主上下文中设置了某些未在每个模块上下文中设置/重写的参数,那么这些参数在加载每个模块上下文时是否仍然有效

例如:

|----$CATALINA_HOME/conf/context.xml (i have logAbandoned=true set here)
|
|----webaps
       |
       |---META-INF/context.xml (no mention of logAbandoned here)
在上述场景中,
logaudded=true
是否会应用于webapp的上下文,因为它没有被覆盖或包含?或者只应用META-INF/context.xml中设置的参数,而不应用main context.xml中设置的任何参数

谢谢

每:

可以定义应用于多个web站点的默认上下文元素 应用。单个web应用程序的配置将 覆盖在其中一个默认值中配置的任何内容。任何嵌套 默认情况下定义的元素,例如元素 将为默认设置为的每个上下文创建一次上下文 应用。它们不会在上下文元素之间共享

  • 在$CATALINA_BASE/conf/context.xml文件中:所有web应用程序都将加载上下文元素信息
  • 在$CATALINA_BASE/conf/[engineame]/[hostname]/context.xml.default文件中: 上下文元素信息将由所有web应用程序加载 那主人的名字

因此,看起来主上下文首先应用于所有应用程序,然后应用模块的上下文,覆盖与default context.xml匹配的任何上下文元素。

+1。只是想发布一个类似的答案,但你是第一个)