我正在运行 JBOSS AS 7.1.1 服务器和单独的 apache Web 服务器。我在 JBoss 服务器上有两个 EAR 部署,每个部署在 Web 服务器上都有一个 apache 虚拟主机配置。一个有效,另一个无效。两种部署都使用 RESTEasy(尽管我认为这不是问题所在),并且都使用 jboss-server:8080 接口。
在我看来,最显着的区别是一个使用 2.4 版本,另一个使用新的 3.0 版本。
这是 2.4 版的网络应用程序,工作部署:
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Sokoban Mobile WAR</display-name>
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
这是不工作的 3.0 部署:
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0" >
<display-name>Voyager Web Application</display-name>
<listener>
<listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
</listener-class>
</listener>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
</servlet-class>
<init-param>
<param-name>
javax.ws.rs.Application
</param-name>
<param-value>
com.nutrastat.voyager.web.VoyagerApplication
</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
两种部署都有一个 jboss-web,看起来像这样:
<?xml version="1.0"?>
<jboss-web>
<context-root>/dir</context-root>
</jboss-web>
dir
替换为 apache 设置中配置的适当上下文。
那么使用 3.0 版本的 web-app 部署需要做什么呢?
谢谢你的帮助