簡體   English   中英

JBoss - 如何設置部署運行時名稱(不使用CLI,而是直接從ear / war)

[英]JBoss - how set deployment runtime name (not using CLI, but directly from ear/war)

我現在正面臨着這個特殊問題而且我真的不知道是否有可能以某種方式實現這一目標。 但情況如下:

我們有這個webapp(Java EE 6) ,它被組織成兩個模塊。 一個是服務模塊 ,另一個是前端模塊 通過遠程ejb進行通信,它們部署在不同的jboss服務器上(均為EAP 6.2)。 (模塊只共享ejb接口(服務模塊實現它們),並且在前端模塊中,實際服務bean實現被注入(@Inject)並通過遠程JNDI定位器實例化,然后使用遠程處理)。 這一切都按預期工作。

但是當我們部署應用程序時(使用jboss管理控制台),我們有這樣的app war名稱: app-service-1.0.war ,在上傳過程中,當jboss詢問“ name ”和“ runtinme name ”時需要擺脫“版本”部分,因此運行時名稱將像這個app-service (名稱必須保持原樣,版本號)。 但問題是此運行時名稱始終基於部署名稱,因此我們始終需要手動刪除版本部分。 我知道可以通過CLI設置名稱,但我想知道是否也可以設置在部署內部(war / ear文件),以便管理員不需要更改運行時名稱使用Web管理控制台。 謝謝

絕對有可能,您只需要在WEB-INF文件夾中創建名為jboss-web.xml文件,其中包含以下內容:

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

應該可以在/ app-service下訪問打包,部署和您的應用。

有關選項的完整列表,請參閱https://docs.jboss.org/jbossweb/7.0.x/appdev/jbossweb.html

如果你想改變戰爭的名稱,你可以像這樣使用ShrinkWrap:

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

然后,

JBAS015859:Deploiement de“XXX.war”(runtime-name:“XXX.war”)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM