Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
None
Description
In JBossMessageDrivenMetaData it is merging the activation-config-propertys between ejb-jar.xml
and jboss.xml by simply checking whether the jboss.xml has any and using that in preference to the ejb-jar.xml
In fact, it always has them since it is initialized on field
/** The activation config */
private ActivationConfigMetaData activationConfig = new ActivationConfigMetaData();
JBossMessageDrivenBeanMetaData joverride = (JBossMessageDrivenBeanMetaData) override;
MessageDrivenBeanMetaData soriginal = (MessageDrivenBeanMetaData) original;
...
// activationConfig
if(joverride != null && joverride.activationConfig != null)
activationConfig = joverride.activationConfig;
else if(soriginal != null && soriginal.getActivationConfig() != null)
activationConfig = soriginal.getActivationConfig();
The joverride.activationConfig is always not null when there is a jboss.xml!
Instead, what it needs to do is merge on per property basis.
i.e. take all the properties from ejb-jar.xml and jboss.xml favouring jboss.xml if there is a duplicate property name.
Because of this, it is currently impossible to define an activation-config-property in ejb-jar.xml unless there is no jboss.xml