Я использую сервер JBOSS AS 7.1.1 и отдельный веб-сервер Apache. У меня есть два развертывания EAR на сервере JBoss, каждое из которых имеет конфигурацию виртуального хоста 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<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<?xml version="1.0"?>
<jboss-web>
<context-root>/dir</context-root>
</jboss-web>
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>
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<?xml version="1.0"?>
<jboss-web>
<context-root>/dir</context-root>
</jboss-web>
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?
Спасибо за вашу помощь
*:8080/2.4/ && *:8080/3.0/
, но не на общедоступном экземпляре*:80/2.4 && *:80/3.0 <--broken
? Или я неправильно понимаю вашу проблему? - person Daniel B. Chapman   schedule 30.11.2012