You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by avermout <av...@gmail.com> on 2009/02/19 22:06:32 UTC

Problem with DeadLetterChannel and Smx

Hello,

I've a problem using the deadletterchannel in Camel 1.4, with smx3.3.

I define the error handler like this (see below), with MB_ERROR_QUEUE being
a jms queue component.

My problem is with the second "when" clause of my route. When an error
occurs (for example,  MB_XLSTRANSFORMER_ENDPONT not available, which produce
a 'could not find route'), it is well managed by the MB_ERROR_QUEUE (jms
queue receives a message, and exchange status is set as done). But the
initial exchange (initiated by ftp poller) is never set to done nor error.
So an exchange stay blocked in the system.

What am I doing wrong? Should camel set the exchange to error or done?

Thanks for your help,


errorHandler(deadLetterChannel(MB_ERROR_QUEUE));
		
from(MB_FTPPOLLER_ENDPOINT).choice()
	.when(header(EXTENSION_PROPERTY).....
	.when(header(EXTENSION_PROPERTY).isEqualTo(XLS_EXTENSION))
			.to(MB_XLSTRANSFORMER_ENDPONT)
	.otherwise().end();
-- 
View this message in context: http://www.nabble.com/Problem-with-DeadLetterChannel-and-Smx-tp22109625p22109625.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem with DeadLetterChannel and Smx

Posted by Ashwin Karpe <as...@progress.com>.
Hi,

I wonder whether this has to do with the version of code available in the
servicemix camel component. BTW, the exception handling code was
significantly revamped since Camel 1.5.x.x and it is possible that
servicemix-camel is missing this functionality.

In any case, it looks like a bug or missing functionality. Can you please
log a Jira issue for this...

Cheers,

Ashwin...


avermout wrote:
> 
> Hello,
> 
> Thanks for your answer.
> Actually, i'm using "jbi:endpoint..." for specifying my ftp poller, and
> I'm using the servicemix-camel component (2008.01).
> 
> On the other hand what seems strange is when I'm using
> errorHandler(deadLetterChannel()) without specifying an error queue to be
> used, ftp poller receives his error message.
> 
> Thanks,
> Aymeric
> 
> 
> Ashwin Karpe wrote:
>> 
>> Hi,
>> 
>> This is odd...
>> 
>> Are you using Camel by employing the servicemix-camel component and then
>> are you specifying the FTP poller using jbi:...?
>> 
>> Cheers,
>> 
>> Ashwin...
>> 
>> 
> 
> 


-----
--- 
Ashwin Karpe, Principal Consultant, PS - Opensource Center of Competence 
Progress Software Corporation
14 Oak Park Drive
Bedford, MA 01730
--- 
+1-972-304-9084 (Office) 
+1-972-971-1700 (Mobile) 
---- 
Blog: http://opensourceknowledge.blogspot.com/


-- 
View this message in context: http://www.nabble.com/Problem-with-DeadLetterChannel-and-Smx-tp22109625p22168292.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem with DeadLetterChannel and Smx

Posted by avermout <av...@gmail.com>.
Hello,

Thanks for your answer.
Actually, i'm using "jbi:endpoint..." for specifying my ftp poller, and I'm
using the servicemix-camel component (2008.01).

On the other hand what seems strange is when I'm using
errorHandler(deadLetterChannel()) without specifying an error queue to be
used, ftp poller receives his error message.

Thanks,
Aymeric


Ashwin Karpe wrote:
> 
> Hi,
> 
> This is odd...
> 
> Are you using Camel by employing the servicemix-camel component and then
> are you specifying the FTP poller using jbi:...?
> 
> Cheers,
> 
> Ashwin...
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem-with-DeadLetterChannel-and-Smx-tp22109625p22160917.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem with DeadLetterChannel and Smx

Posted by Ashwin Karpe <as...@progress.com>.
Hi,

This is odd...

Are you using Camel by employing the servicemix-camel component and then are
you specifying the FTP poller using jbi:...?

Cheers,

Ashwin...


avermout wrote:
> 
> Hello,
> 
> I've a problem using the deadletterchannel in Camel 1.4, with smx3.3.
> 
> I define the error handler like this (see below), with MB_ERROR_QUEUE
> being a jms queue component.
> 
> My problem is with the second "when" clause of my route. When an error
> occurs (for example,  MB_XLSTRANSFORMER_ENDPONT not available, which
> produce a 'could not find route'), it is well managed by the
> MB_ERROR_QUEUE (jms queue receives a message, and exchange status is set
> as done). But the initial exchange (initiated by ftp poller) is never set
> to done nor error. So an exchange stay blocked in the system.
> 
> What am I doing wrong? Should camel set the exchange to error or done?
> 
> Thanks for your help,
> 
> 
> errorHandler(deadLetterChannel(MB_ERROR_QUEUE));
> 		
> from(MB_FTPPOLLER_ENDPOINT).choice()
> 	.when(header(EXTENSION_PROPERTY).....
> 	.when(header(EXTENSION_PROPERTY).isEqualTo(XLS_EXTENSION))
> 			.to(MB_XLSTRANSFORMER_ENDPONT)
> 	.otherwise().end();
> 


-----
--- 
Ashwin Karpe, Principal Consultant, PS - Opensource Center of Competence 
Progress Software Corporation
14 Oak Park Drive
Bedford, MA 01730
--- 
+1-972-304-9084 (Office) 
+1-972-971-1700 (Mobile) 
---- 
Blog: http://opensourceknowledge.blogspot.com/


-- 
View this message in context: http://www.nabble.com/Problem-with-DeadLetterChannel-and-Smx-tp22109625p22160614.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.