geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mohammed Imran (JIRA)" <j...@apache.org>
Subject [jira] Issue Comment Edited: (GERONIMO-4153) Messages are not being redelivered correctly
Date Fri, 27 Jun 2008 09:29:45 GMT

    [ https://issues.apache.org/jira/browse/GERONIMO-4153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12608709#action_12608709
] 

imy30 edited comment on GERONIMO-4153 at 6/27/08 2:28 AM:
-------------------------------------------------------------------

Example source code has been enclosed. 

I have set the redelivery count in the JMS plan to 
            <config-property-setting name="MaximumRedeliveries">20</config-property-setting>
This does work, because if I keep restarting the server it will slowly get upto 20.

However even if I leave this out the default redelivery is 5 or 10, which at the moment it
doesnt get to unless I restart the server.

      was (Author: imy30):
    Example source code
  
> Messages are not being redelivered correctly
> --------------------------------------------
>
>                 Key: GERONIMO-4153
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4153
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: ActiveMQ
>    Affects Versions: 2.1, 2.1.1
>         Environment: Geronimo 2.1.1, Windows XP SP3. Java 1.6_0_6
>            Reporter: Mohammed Imran
>         Attachments: javaEEApplication.ear, src.zip
>
>
> I am experiencing problems with redelivery of messages in activemq/geronimo it seems
to not redeliver the message when a system exception occurs. I know that ActiveMQ has a max
redelivery count, however the messages seem to stop being processed after 1-2 attempts. I
am not getting anywhere near the max redelivery count.
> 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>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message