[jboss-user] [IronJacamar] - trying to understand JBoss ra.xml required-config-property for inbound

jleinawe do-not-reply at jboss.com
Tue Mar 20 18:49:34 EDT 2012


jleinawe [https://community.jboss.org/people/jleinawe] created the discussion

"trying to understand JBoss ra.xml required-config-property for inbound"

To view the discussion, visit: https://community.jboss.org/message/725194#725194

--------------------------------------------------------------
My resource-adapter has 3 required-config-property elements

from ra.xml:
|    | <inbound-resourceadapter> |
|      | <messageadapter> |
|         | <messagelistener> |
|            | <messagelistener-type> |
|               | javax.jms.MessageListener |
|            | </messagelistener-type> |
|            | <activationspec> |
|               | <activationspec-class> |
|                  | weblogic.jms.ra.ActivationSpecImpl |
|               | </activationspec-class> |
|               | <required-config-property> |
|                  | <config-property-name>*ConnectionFactory*</config-property-name> |
|               | </required-config-property> |
|               | <required-config-property> |
|                  | <config-property-name>*Destination*</config-property-name> |
|               | </required-config-property> |
|               | <required-config-property> |
|                  | <config-property-name>*DestinationType*</config-property-name> |
|               | </required-config-property> |


My ra implemetation supports optional config-properties, such as MessageSelector that I specify in the MDB source

@MessageDriven(
    name="MyMdb",
    activationConfig = {
       @ActivationConfigProperty(propertyName = "*ConnectionFactory*",
                                 propertyValue = "java:jboss/wljmsra/cf"),
       @ActivationConfigProperty(propertyName = "*DestinationType*",
                                 propertyValue = "javax.jms.Queue"),
       @ActivationConfigProperty(propertyName = "*Destination*",
                                 propertyValue = "java:jboss/wljmsra/queue2"),
       @ActivationConfigProperty(propertyName = "*MessageSelector*",
                                 propertyValue = "Recipient = 'MDB'"),
        })


When I deploy, I get this warning and my MDB's MessageSelector is ignored.

WARN  [org.jboss.ejb3] (MSC service thread 1-1) JBAS014105: ActivationConfigProperty MessageSelector will be ignored since it is not allowed by resource adapter: wljmsra

The only way I can work around this is to add MessageSelector to my ra.xml as a required-config-property.   

I can also add other required-config-property elements and not assign values to them in my MDB's @ActivationConfigProperty.  This seems to defeat the purpose of having to identify "required"-config-property elements for inbound in ra.xml.

while the app-server is not required to enforce "required-config-property", the app-server and deployment tools are allowed to do so.

JCA Section 12.4.2.2: "The resource adapter may also provide in its deployment descriptor, using the required-config-property element, an optional list of configuration property names required for each activation specification. This information may be used during deployment to ensure that the required configuration properties are specified."

So while adding all of the RA's optional activation spec properties as "required-config-property"s in ra.xml might be a work-around for vanilla JBoss, it would make the RA non-JCA-compliant and may cause failures on other app-servers or when using various deployment tools.  Even on JBoss it may cause problems if the user is using a deployment tool that enforces "required-config-property".
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/725194#725194]

Start a new discussion in IronJacamar at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2098]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120320/fddee707/attachment-0001.html 


More information about the jboss-user mailing list