You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Rune Berg (JIRA)" <ji...@apache.org> on 2009/06/23 14:09:35 UTC

[jira] Updated: (CAMEL-1749) Message body lost when message moved by exception clause

     [ https://issues.apache.org/activemq/browse/CAMEL-1749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rune Berg updated CAMEL-1749:
-----------------------------

    Attachment: ruting-bodyloss.zip

> Message body lost when message moved by exception clause
> --------------------------------------------------------
>
>                 Key: CAMEL-1749
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1749
>             Project: Apache Camel
>          Issue Type: Bug
>    Affects Versions: 1.6.0, 1.6.1
>         Environment: WIn XP,  JSE1.5, ActiveMQ 5.1.0
>            Reporter: Rune Berg
>         Attachments: ruting-bodyloss.zip
>
>
> (See: http://www.nabble.com/Message-body-lost-when-message-moved-by-exception-clause-td24088536.html)
> After upgrading from 1.5.0 to 1.6.1, we find that an exception clause such as this one 
> <onException>
> 	<exception>no.spk.ruting.feil.PersonIkkeFunnetNavException</exception>
> 	<redeliveryPolicy maximumRedeliveries="0" />
> 	<handled>
> 		<constant>true</constant>
> 	</handled>
> 	<to ref="tpforholdArbeidskoe" />
> </onException>
> cause the message body to be *empty* after the message has been moved to tpforholdArbeidskoe. The message was jaxb-unmarshalled in the process that led up to the exception.
> ----------
> The attached application (which is a cut-down version of our real one) demonstrates the problem. To reproduce:
> 1. Post a message with a text body like  this to queue "tpforholdHoved":
> <?xml version="1.0" encoding="UTF-8"?>
> <TPForholdHendelse>
> 	<type>Opprett</type>
> 	<ordning>1015</ordning>
> 	<datKundeFoedtNum>11223344</datKundeFoedtNum>
> 	<ideKundePrsnr>12345</ideKundePrsnr>
> </TPForholdHendelse>
> When this message gets consumed by TPForholdWSKlientImpl.opprettTPForholdNAV(), an exception is deliberately thrown, and the message gets moved to queue "tpforholdArbeidskoe".
> When, in turn, the message gets consumed by HendelseKlientWSKlientImpl.lagArbeidskoeHendelsePersonIkkeFunnet(), the message's body has been lost. At least, the param to HendelseKlientWSKlientImpl.lagArbeidskoeHendelsePersonIkkeFunnet() is null. 
> 2. Now, change pom.xml som that the app uses Camel 1.5.0 instead. Rerun step 1. The problem does not occur now.

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