2011-06-26 25 views
0

每Devlopers噩夢是如何做他/她的代碼嵌入到最終包裝....註解ARGS動態

問題EJB3.x是出能夠重新編譯與新的代碼註釋的使用args作爲單位設置爲直通集成測試

例如:

@MessageDriven(activationConfig = { 
     @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"), 
     @ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/Messagess") }) 

問題是J2EE容器有多少保證隊列JMS盒始終是「隊列/ Messagess」

那麼命名可以是「queue/xyzabc」.....

如何在EJB3.x中配置這樣的參數而不用重新編譯代碼...... ???

與問候

KARTHIK

回答

0

使用激活配置屬性的XML。

<message-driven> 
    <ejb-name>YourMDBName</ejb-name> 
    <activation-config> 
    <activation-config-property> 
     <activation-config-property-name>destination</activation-config-property-name> 
     <activation-config-property-value>YourValue</activation-config-property-value> 
    </activation-config-property> 
    </activation-config> 
</message-driven> 

僅僅因爲你使用帶有註釋爲便於開發EJB 3.X並不意味着使用XML覆蓋註釋配置數據是「錯誤的」。

+0

嗨 >>易於開發並不意味着使用XML來覆蓋註釋配置數據是「錯誤」 –

+0

嗨 >>易於開發並不意味着使用XML來覆蓋註釋配置數據是「錯誤的「 而不是重新發明韋爾,我寧願簡單地使用韋爾。 我的意思是說,如果註釋是替換雜亂的XML,並簡化EJB過程......那麼同樣應該支持運行時配置。 我肯定會bileave ..開發人員會同意中間解決方案。 。 –

+0

沒有標準化的「中間」解決方案:要麼使用註釋(如果不重新編譯就不能更改)或使用XML(更詳細)。 –