-
Bug
-
Resolution: Done
-
Major
-
JBoss A-MQ 6.0
-
None
1.Start the JBoss AMQ
2.deploy the following the in the EAP 6.0.1 deployment folder i.e. /jboss-eap-6.0/standalone/deployments ( jboss-eap-6.0.1.zip can be downloaded from http://download.eng.pnq.redhat.com/released/JBEAP-6/6.0.1/zip/ )
A).amq-5.8.0.redhat-60024 with ra.xml attached to the case (find it in attached zip file)
B)amqmdb.jar
C)amq-web.war
3.Add the following the in the standalone-full.xml
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.0">
<resource-adapters>
<resource-adapter>
<archive>
amq-5.8.0.redhat-60024.rar
</archive>
<transaction-support>XATransaction</transaction-support>
<config-property name="Password">
admin
</config-property>
<config-property name="UserName">
admin
</config-property>
<config-property name="ServerUrl">
tcp://0.0.0.0:61616?jms.redeliveryPolicy.maximumRedeliveries=3&jms.redeliveryPolicy.initialRedeliveryDelay=5000&jms.redeliveryPolicy.redeliveryDelay=5000
</config-property>
<connection-definitions>
<connection-definition class-name="org.apache.activemq.ra.ActiveMQManagedConnectionFactory" jndi-name="java:/activemq/ConnectionFactory" enabled="true" use-java-context="true" pool-name="ActiveMQConnectionFactoryPool" use-ccm="true">
<xa-pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>20</max-pool-size>
</xa-pool>
</connection-definition>
</connection-definitions>
<admin-objects>
<admin-object class-name="org.apache.activemq.command.ActiveMQQueue" jndi-name="java:/activemq/queue_out" enabled="true" use-java-context="true" pool-name="ActiveMQQueue.queue_out">
<config-property name="PhysicalName">
queue.queue_out
</config-property>
</admin-object>
<admin-object class-name="org.apache.activemq.command.ActiveMQQueue" jndi-name="java:/activemq/queue_in" enabled="true" use-java-context="true" pool-name="ActiveMQQueue.queue_in">
<config-property name="PhysicalName">
queue.queue_in
</config-property>
</admin-object>
</admin-objects>
</resource-adapter>
</resource-adapters>
</subsystem>
and
<mdb>
<resource-adapter-ref resource-adapter-name="amq-5.8.0.redhat-60024"/>
</mdb>
Now start the EAP 6.0.1 Server as follows " ./jboss-eap-6.0/bin/standalone.sh -c standalone-full.xml "
3.Connect to the application server using a debugger. Set a breakpoint on the first line of MessageListener.onMessage method
4.Put a message onto queue.queue_out by hitting the application as follows
http://localhost:8080/amq-web/JMSClientServlet
When the breakpoint is hit then throw manually a RuntimeException (e.g. in Eclipse highlight the 'throw new RuntiemException(...)' line, right-click and choose Execute).
5a. Expected:
Message is redelivered after redelivery delay. After redelivery attempts limit is reached the message lands on DLQ.
5b. Actual:
Exception is thrown , message is lost.
- relates to
-
ENTMQ-2009 Contention with RAR localTransaction rollback, non transacted ack in the mix in error
- Closed