如何为每个应用程序配置tomcat 7以使用不同的css / js文件

时间:2013-07-16 15:50:33

标签: tomcat oracle-apex

我希望tomcat根据url映射到不同的css / js / etc文件夹(每个版本一个文件夹)。我需要这个来测试不同版本的apex-application。我设法运行了1个应用程序。现在我想跑更多。我在server.xml中找到了关于不同主机的设置。所以我把2台主机放进去。

 <Host name="localhost/apex_mcl"  appBase="webapps/apex_mcl"
        unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log." suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />

  </Host>

 <Host name="localhost/apex_mcl2"  appBase="webapps/apex_mcl2"
        unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log." suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />

  </Host>

然后我在ROOT / WEB-INF中编辑了web.xml文件,用于“servlet-maping”。 css / js文件位于/ ROOT / apex_mcl [12] / i

<servlet>
    <servlet-name>apex_mcl</servlet-name>
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
    </init-param>
    <init-param>
        <param-name>listings</param-name>
        <param-value>true</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>apex_mcl</servlet-name>
    <url-pattern>/ROOT/apex_mcl/i</url-pattern>
</servlet-mapping>

和apex_mcl2

<servlet>
    <servlet-name>apex_mcl2</servlet-name>
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
    </init-param>
    <init-param>
        <param-name>listings</param-name>
        <param-value>true</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>apex_mcl</servlet-name>
    <url-pattern>/ROOT/apex_mcl2/i</url-pattern>
</servlet-mapping>

“i”包含css / js / etc

如果我把我的文件放在/ i中它正在工作

可以请别人告诉我我错过了什么。

如果需要更多信息,请询问。

马里奥

1 个答案:

答案 0 :(得分:0)

执行此操作的一种简单方法是将版本拆分为两个单独的项目,并将每个项目添加到Tomcat服务器。部署后,您可以转到http://localhost:8080/apex_mclhttp://localhost:8080/apex_mcl2,每个网页都会引用自己的css / js。