Apache Geronimo > Discussion Forums  User List | Dev List | Wiki | Issue Tracker  

Messages are not being redelivered (JMS)

View: New views
2 Messages — Rating Filter:   Alert me  

Messages are not being redelivered (JMS)

by Mohammed Imran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

user@...

I enclose a very simple example. This ear simple has 1 MDB which will automatically throw an EJBException. (In the source code I have configured it to use ActiveMQ default queues and connection factory this was only done so you can quickly see what happens without setting up your own queue and connection factory. I also enclose a runnable class which will send a message to the queue.)

The expected result should be MDB retires 5/10/xxx amount of times whatever the max redelivery count is set to and then stops redelivering the message. However as I have said earlier on I am not getting this, seems to only retry once.

package test;

import javax.ejb.*;
import javax.jms.MessageListener;
import javax.jms.Message;

@MessageDriven(activationConfig = { @ActivationConfigProperty( propertyName = "destinationType", propertyValue = "javax.jms.Queue"), @ActivationConfigProperty( propertyName = "destination", propertyValue = TestMDBBean.QUEUE_NAME) ,@ActivationConfigProperty( propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge") })
//@TransactionManagement(TransactionManagementType.CONTAINER)
@TransactionAttribute(TransactionAttributeType.REQUIRED)
public class TestMDBBean implements MessageListener {
public static final String QUEUE_NAME = "SendReceiveQueue";//"ErrorQueue";;
public void onMessage(Message message) { System.err.println("This is a test"); throw new EJBException("This is a lovely test"); }
}

open-ejbjar.xml

<?xml version="1.0" encoding="UTF-8"?>
<openejb-jar
xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1"
xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1"
xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"
xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0">
<enterprise-beans>
<message-driven>
<ejb-name>TestMDBBean</ejb-name>
<resource-adapter>
<!-<resource-link>MyJMSResources</resource-link>->
<resource-link>ActiveMQ RA</resource-link>
</resource-adapter>
</message-driven>

</enterprise-beans>
</openejb-jar>

Geronimo application

<?xml version="1.0" encoding="UTF-8"?>
<application
xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.2"
xmlns:security="http://geronimo.apache.org/xml/ns/security-1.2"
xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2" application-name="My">

<sys:environment>
<sys:moduleId>
<sys:groupId>tester</sys:groupId>
<sys:artifactId>mdb</sys:artifactId>
<sys:version>1</sys:version>
<sys:type>car</sys:type>
</sys:moduleId>
<sys:dependencies>

<!--
<sys:dependency>
<sys:groupId>My.jms</sys:groupId>
<sys:artifactId>MyJMSResources</sys:artifactId>
<sys:version>1.0</sys:version>
<sys:type>rar</sys:type>
</sys:dependency>
-->

<sys:dependency>
<sys:groupId>org.apache.geronimo.configs</sys:groupId>
<sys:artifactId>activemq-ra</sys:artifactId>
<sys:version>2.1.1</sys:version>
<sys:type>car</sys:type>
</sys:dependency>

</sys:dependencies>

<sys:hidden-classes/>
<sys:non-overridable-classes/>
</sys:environment>

</application>


Re: Messages are not being redelivered (JMS)

by Kevan Miller :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Jun 25, 2008, at 6:30 AM, Mohammed Imran wrote:

user@...

For completeness, Mohammed created a Jira opened for this. See -- https://issues.apache.org/jira/browse/GERONIMO-4153

--kevan

LightInTheBox - Buy quality products at wholesale price