与Wildfly中2个不同模块的REST相同的路径

时间:2015-11-17 15:01:09

标签: java rest jboss wildfly

我正在使用Wildfly 9并且有2个不同的模块(战争)我部署并声明为应用程序(Servlet)。

我使用带有PathAnnotation的Dynamic Web Modules v 3.1和Application Subclasses而没有web.xml文件。

现在每个Module-Path都有自己的Package-Name。 例如Test-Modul localhost:8080/testmodul/等等。 但我需要2个不同的War文件才能在同一条路径上收听,例如localhost:8080/api

2 个答案:

答案 0 :(得分:1)

不可能有共享相同上下文的不同部署。但是,可以通过在应用程序服务器前使用反向代理来实现所需的结果。

答案 1 :(得分:0)

实际上我找到了一种方法,因为它是可能的:

在Wildfly中,您可以创建一个名为“jboss-web.xml”的文件,并将其放在模块的WEB-INF文件夹中。

在这个xml中,您现在可以定义web.xml或其他方式无法实现的不同内容。 例如,您可以使用选项< context-root>定义模块的路径。在我的示例中,jboss-web.xml看起来像这样:

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

现在,您可以访问以下两个已部署的模块: www.localhost:8080 / API /模块

还有很多其他可能的命令,您可以在这里阅读: https://docs.jboss.org/jbossweb/7.0.x/appdev/jbossweb.html