[jboss-jira] [JBoss JIRA] (WFLY-5049) AMQ Artemis does not support slash character used in activation property of MDB

Jeff Mesnil (JIRA) issues at jboss.org
Wed Oct 7 11:46:00 EDT 2015


    [ https://issues.jboss.org/browse/WFLY-5049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13116089#comment-13116089 ] 

Jeff Mesnil commented on WFLY-5049:
-----------------------------------

I'd advise to use the destination+useJNDI=false for your setup to make it clear that the JMS destination is created based on the JMS destination name and not on any JNDI lookups.

> AMQ Artemis does not support slash character used in activation property of MDB
> -------------------------------------------------------------------------------
>
>                 Key: WFLY-5049
>                 URL: https://issues.jboss.org/browse/WFLY-5049
>             Project: WildFly
>          Issue Type: Bug
>          Components: JMS
>    Affects Versions: 10.0.0.Alpha6
>            Reporter: Miroslav Novak
>            Assignee: Jeff Mesnil
>         Attachments: ejb-jar.xml, mdb-deployed-standalone-full.xml, remote-activemq-broker-standalone-full.xml
>
>
> When using slash character {{/}} in configuration of artemis messaging subsystem as jms queue name then MDB fails to connect to remote messaging server.
> My settings is following - I have a remote messaging server where queue is defined like
> {code}
> <jms-queue name="queue/crashRecoveryQueue" entries="java:jboss/queue/crashRecoveryQueue"/>
> {code}
> Then there is a server where MDB is deployed. That server configures connection factory
> {code}
> <pooled-connection-factory name="messaging-broker-remote" transaction="xa" entries="java:/RemoteJmsXA" connectors="messaging-broker-http-remote"/>
> {code}
> http connector
> {code}
> <http-connector name="messaging-broker-http-remote" socket-binding="remote-messaging">
>   <param name="http-upgrade-endpoint" value="http-acceptor"/>
> </http-connector>
> {code}
> outbound socket binding
> {code}
> <outbound-socket-binding name="remote-messaging">
>   <remote-destination host="127.0.0.1" port="8280"/>
> </outbound-socket-binding>
> {code}
> and resource reference for ejb subsystem
> {code}
> <mdb>
>   <resource-adapter-ref resource-adapter-name="messaging-broker-remote"/>
>   <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
> </mdb>
> {code}
> The MDB uses ejb-jar with activation properties
> {code}
> <?xml version="1.0" encoding="UTF-8"?>
> <ejb-jar id="EJBJar_1060639024453" version="3.0"
> xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
> metadata-complete="false">
> <enterprise-beans>
>   <message-driven>
>     <ejb-name>JMSCrashMessageDrivenBean</ejb-name>
>     <ejb-class>org.jboss.as.test.jbossts.crashrec.jms.mdb.JMSCrashMessageDrivenBean</ejb-class>
>     <activation-config>
>       <activation-config-property>
>          <activation-config-property-name>destination</activation-config-property-name>
>          <activation-config-property-value>queue/MDBTriggerQueue</activation-config-property-value>
>        </activation-config-property>
>        <activation-config-property>
>          <activation-config-property-name>destinationType</activation-config-property-name>
>          <activation-config-property-value>javax.jms.Queue</activation-config-property-value>
>        </activation-config-property>
>      </activation-config>
>    </message-driven>
> </enterprise-beans>
> </ejb-jar>
> {code}
> The server does not show any warning that the connection was not found, just MDB does not receive any message from the queue.
> If I use {{MDBTriggerQueue}} instead of {{queue/MDBTriggerQueue}} the same setup starts working perfectly.



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list