0

我正在运行 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 部署需要做什么呢?

谢谢你的帮助

4

1 回答 1

0

我找到了解决我的问题的方法。这不是配置问题,而是 URL 中的错误。我的手指麻烦。

我感谢丹尼尔的帮助。他强迫我仔细观察我在做什么,从而我发现了我的愚蠢错误。

于 2012-12-04T13:59:17.613 回答