2014-10-10 37 views
1
一個EJB

我有一個在JBoss中運行一些舊的代碼看起來是這樣的:如何指定上下文中JBOSS

@Stateless 
@Remote(MyClass.class) 
@RemoteBinding(jndiBinding = "app/Service") 
public class myServiceBean { 
    // Some methods 
} 

當我在JNDI查找Bean的我必須使用一個字符串看起來像:

ear-name/Service/remote 

我對這個名字的最後兩個部分不錯,但我有「耳文件」用作上下文名稱的問題。因爲我默認使用Maven構建ear-file將包含版本號(我希望可追蹤),但這意味着我每次發佈服務的新版本時都必須更改對該服務的所有引用!

如何強制上下文不是ear-file的名稱?

回答

0

你可以設置你的耳朵名application.xml中是這樣的:

<application-name>ear-name</application-name> 

所以你可以有耳namexxx.ear但你搜索的時候會到耳的名字進行

你可以對ejb模塊也一樣:

<ejb-jar> 
    <module-name>ejb-name</module-name> 
</ejb-jar> 

希望它有幫助!

來源https://developer.jboss.org/thread/158207

+1

謝謝。 :-) 如果其他人想知道這一點,我還需要更新maven-ear-plugin並強制它使用版本6在寫入元素之前生成版本6的application.xml – Stormcloud 2014-10-13 13:27:27