在单个jboss实例中具有相同上下文路径的多个war不会加载静态内容

时间:2015-06-11 12:34:04

标签: deployment jboss static virtualhost

我使用jboss 4中的虚拟主机部署了两个具有相同上下文路径的war STORE_ABC.warSTORE_DEF.war文件。STORE_ABC.war可通过URL http://localhost:8080/home和{{1}访问可以通过网址STORE_DEF.war访问。http://testsite1:8080/home的配置如下所示。

server.xml

<Server> <Service name="jboss.web" className="org.jboss.web.tomcat.tc5.StandardService"> <Connector port="8080" address="${jboss.bind.address}" maxThreads="250" strategy="ms" maxHttpHeaderSize="8192" emptySessionPath="true" enableLookups="false" redirectPort="443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true"/> <Connector protocol="HTTP/1.1" port="8081" address="${jboss.bind.address}" redirectPort="${jboss.web.https.port}" /> <Connector port="8089" address="${jboss.bind.address}" emptySessionPath="true" enableLookups="false" redirectPort="443" protocol="AJP/1.3"/> <Connector port="8445" address="${jboss.bind.address}" maxThreads="100" strategy="ms" maxHttpHeaderSize="8192" emptySessionPath="true" scheme="https" secure="true" clientAuth="false" keystoreFile="${jboss.server.home.dir}/conf/bookstore.keystore" keystorePass="bookstore" sslProtocol = "TLS" allowTrace="true"/> <Engine name="jboss.web" defaultHost="localhost"> <Realm className="org.jboss.web.tomcat.security.JBossSecurityMgrRealm" certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping" /> <Host name="localhost" autoDeploy="false" deployOnStartup="false" deployXML="false"> </Host> <Host name="vhost2" autoDeploy="false" deployOnStartup="false" deployXML="false"> <Alias>testsite1</Alias> <Valve className="org.apache.catalina.valves.AccessLogValve" prefix="vhost2" suffix=".log" pattern="common" directory="${jboss.server.home.dir}/log"/> <DefaultContext cookies="true" crossContext="true" override="true"/> </Host> </Engine> </Service> </Server> 的{​​{1}}

STORE_ABC.war

jboss-web.xml的{​​{1}}

<jboss-web>
   <context-root>/</context-root>
</jboss-web>

我在STORE_DEF.war {j}内jboss-web.xml<jboss-web> <context-root>/</context-root> <virtual-host>testsite1</virtual-host> </jboss-web> 文件夹中与static.wardeploy平行,用于提供静态内容(STORE_ABC.war和{ {1}})。 现在的问题是,STORE_DEF.war没有加载来自css的静态内容,而images的工作正常。

1 个答案:

答案 0 :(得分:0)

我自己发现问题出在static.war。我需要在WEB-INF内创建一个static.war文件夹,并按如下方式添加jboss-web.xml

<jboss-web>
   <context-root>/static</context-root>
   <virtual-host>testsite1</virtual-host>
   <virtual-host>localhost</virtual-host>
</jboss-web>

需要在jboss-web.xml

STORE_ABC.war内进行更正
<jboss-web>
   <context-root>/</context-root>
   <virtual-host>localhost</virtual-host>
</jboss-web>

完成上述所有更改后,它开始正常工作。