[jboss-user] [JCA/JBoss] - Redelivering messages
pepite
do-not-reply at jboss.com
Thu Sep 13 07:33:56 EDT 2007
I have a small problem with Redelivering messages.
I am using jboss 4.0.5.
I have looked at bug EJBTHREE-783 and backported the changes from 4.2.1ga to the 4.0.5 branch.
However, when looking at the code, I came across the following part, in org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory:
|
| public boolean isDeliveryTransacted(Method method) throws NoSuchMethodException
| {
| boolean result = false;
| int transType = metaData.getMethodTransactionType(method.getName(), method.getParameterTypes(), InvocationType.LOCAL);
| if (transType == MetaData.TX_REQUIRED)
| result = true;
| if (trace)
| log.trace("isDeliveryTransacted " + container.getBeanMetaData().getContainerObjectNameJndiName() + " method=" + method + " result=" + result);
| return result;
| }
|
|
I am a bit surprised by this method. What about TX_MANDATORY, TX_REQUIRES_NEW, and TX_SUPPORT?
I guess that the delivery is transacted if we are using any of these states.
Currently messages do not get rollback and requeued if the transaction type is other than REQUIRED. I don't think that's correct. They should be requeued as well for other transaction types.
What there a logic behind this? I may I reopen EJBTHREE-783?
Thanks,
Nicolas Leroux
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4083882#4083882
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4083882
More information about the jboss-user
mailing list