2014-10-31 36 views
5

我现在正面临着这个特殊问题,我真的不知道是否有可能以某种方式实现这一点。但这里的情况:JBoss - 如何设置部署运行时名称(不是使用CLI,而是直接来自ear/war)

我们有这个webapp(Java EE 6)它被组织成两个模块。一个是服务模块,另一个是前端模块。 comunicate通过远程ejb,它们部署在不同的jboss服务器上(都是EAP 6.2)。 (模块只是共享ejb接口(Service模块实现它们),而在Frontend模块中,实际的服务bean实现被注入(@Inject)并通过远程JNDI定位器实例化,然后使用远程处理)。这一切都按预期工作。

但是,当我们部署的应用程序(使用JBoss管理控制台),我们的应用程序名称战争这样的:应用服务,1.0.war并在上传过程中,当JBoss的问起了““和”runtinme name“我们需要摆脱”版本“部分,因此运行时名称将如此应用程序服务(名称必须保持原样,具有版本号)。但问题是这个运行时名称总是基于部署名称,所以我们总是需要手动删除版本部分。 我知道可以通过CLI设置名称,但我想知道是否也可以在部署(war/ear文件)内部进行设置,以便管理员无需更改运行时名称当使用网络管理控制台时。由于

回答

4

这绝对是可能的,你只需要在文件夹WEB-INF创建一个名为jboss-web.xml文件,内容如下:

<?xml version="1.0" ?> 
<jboss-web> 
    <context-root>/app-service</context-root> 
</jboss-web> 

包装,部署和您的应用程序应该是在/应用服务访问。

有关选项见https://docs.jboss.org/jbossweb/7.0.x/appdev/jbossweb.html

-1

如果你想改变战争 的名称,你可以使用收缩包装这样的完整列表:

WebArchive wa = ShrinkWrap.create(WebArchive.class,"XXX.war") 

然后,

JBAS015859:Deploiement德“XXX.war”(运行时名称:“XXX.war”)

相关问题