Jboss EAP 6.4 integration with artemis

Viewed 169

Trying to integrate jboss eap 6.4 with artemis server(2.17), placed libraries in modules folder & used resource-adapter in standalone.xml, could able to post message to remote artemis server(clustered) but cannot listen with MDB's.

Configuration in standalone.xml:

<subsystem xmlns="urn:jboss:domain:resource-adapters:1.1">
            <resource-adapters>
                <resource-adapter id="org.apache.activemq.artemis.ra">
                    <module slot="main" id="org.apache.activemq.artemis.ra"/>
                    <transaction-support>XATransaction</transaction-support>
                    <config-property name="ConfirmationWindowSize">
                        50
                    </config-property>
                    <config-property name="DiscoveryRefreshTimeout">
                        3333
                    </config-property>
                    <config-property name="userName">
                        amq-user
                    </config-property>
                    <config-property name="password">
                        amq-pwd
                    </config-property>
                    <config-property name="ClientFailureCheckPeriod">
                        100
                    </config-property>
                    <config-property name="MaxRetryInterval">
                        3000
                    </config-property>
                    <config-property name="ConnectionParameters">
                        host=remote-host1;port=61616,host=remote-host2;port=61616,host=remote-host3;port=61616
                    </config-property>
                    <config-property name="HA">
                        true
                    </config-property>
                    <config-property name="RetryInterval">
                        4444
                    </config-property>
                    <config-property name="connectorClassName">
                        org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnectorFactory
                    </config-property>
                    <config-property name="ConnectionLoadBalancingPolicyClassName">
                        org.apache.activemq.artemis.api.core.client.loadbalance.RoundRobinConnectionLoadBalancingPolicy
                    </config-property>
                    <config-property name="ReconnectAttempts">
                        10
                    </config-property>
                    <connection-definitions>
                        <connection-definition class-name="org.apache.activemq.artemis.ra.ActiveMQRAManagedConnectionFactory" jndi-name="java:/JmsConnectionFactory" enabled="true" pool-name="JmsConnectionFactory">
                            <xa-pool>
                                <min-pool-size>25</min-pool-size>
                                <max-pool-size>30</max-pool-size>
                                <prefill>true</prefill>
                                <is-same-rm-override>false</is-same-rm-override>
                            </xa-pool>
                        </connection-definition>
                    </connection-definitions>
                    <admin-objects>
                        <admin-object class-name="org.apache.activemq.artemis.jms.client.ActiveMQQueue" jndi-name="java:jboss/jms/queue/TestQueue" use-java-context="true" pool-name="TestQueue">
                            <config-property name="PhysicalName">
                                TestQueue
                            </config-property>
                        </admin-object>
                    </admin-objects>
                </resource-adapter>
            </resource-adapters>
<mdb>
                <resource-adapter-ref resource-adapter-name="org.apache.activemq.artemis.ra"/>
                <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
            </mdb>

ListnerCode:

@MessageDriven(mappedName = "java:jboss/jms/queue/TestQueue", activationConfig = {
        @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
        @ActivationConfigProperty(propertyName = "destination", propertyValue = "TestQueue"),
        @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge") })
public class TestQueueListener implements MessageListener {}

Local jboss logs, below warn is coming repeatedly.

WARN [org.apache.activemq.artemis.ra] (default-threads - 2) {X:|I:} AMQ153005: Unable to retrieve "TestQueue" from JNDI. Creating a new "javax.jms.Queue" named "TestQueue" to be used by the MDB.

On Artemis server logs,

DEBUG [org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler] Sending exception to client: ActiveMQNonExistentQueueException[errorType=QUEUE_DOES_NOT_EXIST message=AMQ229017: Queue TestQueue does not exist]

I guess jboss is not configured properly and cannot create queue for listener.

0 Answers
Related