Hi Really weird. We have unit tests running for ages in camel-spring testing this. But today they started failing after upgrading junit recently.
Anyway I tracked down the issue with setting the global error handler and will fix it in short time. On Thu, Sep 3, 2009 at 2:55 PM, Claus Ibsen <[email protected]> wrote: > Hi > > Is this still an issue for you? I am super bust and havent got time to > drill down. > As we got many error handling and global / route based tests I would > be surprised if something was wrong in camel. > > > > On Wed, Aug 26, 2009 at 12:18 PM, Bach > Christian<[email protected]> wrote: >> Sure, I really appreciate your help. >> >> I had to take some (more or less sensitive :) ) snippets out, but this is >> essentially what it looks like : >> >> <?xml version="1.0" encoding="UTF-8"?> >> <beans xmlns="http://www.springframework.org/schema/beans" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation=" >> http://www.springframework.org/schema/beans >> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd >> http://camel.apache.org/schema/spring >> http://camel.apache.org/schema/spring/camel-spring.xsd"> >> >> <camelContext id="camel" >> xmlns="http://camel.apache.org/schema/spring" >> errorHandlerRef="deadLetterErrorHandler"> >> >> <route> >> <from >> uri="........" /> >> <choice> >> <when> >> ...... >> </when> >> <when> >> ...... >> </when> >> <otherwise> >> <!-- status messages go to direct:out >> straight --> >> <to uri="direct:out" /> >> </otherwise> >> </choice> >> </route> >> >> <route> >> <from uri="seda:fairValuePricePipeline" /> >> <to uri="bean:fairValuePriceMessageValidator" /> >> <choice> >> <when> >> ...... >> </when> >> <otherwise> >> <to >> uri="direct:fallbackPriceSelector" /> >> </otherwise> >> </choice> >> </route> >> >> <route errorHandlerRef="deadLetterErrorHandler"> >> <from uri="seda:bondfloorPricePipeline" /> >> <to uri="bean:bondfloorPriceMessageValidator" /> >> <choice> >> <when> >> ...... >> </when> >> <otherwise> >> <to >> uri="direct:fallbackPriceSelector" /> >> </otherwise> >> </choice> >> </route> >> >> <route> >> <from uri="direct:fallbackPriceSelector" /> >> <to uri="bean:fallbackPriceSelector" /> >> <to uri="direct:out" /> >> </route> >> >> <route> >> <from uri="seda:deadletterQueue" /> >> <to uri="direct:out" /> >> </route> >> >> <route> >> <from uri="direct:out" /> >> <to uri="........." /> >> </route> >> >> </camelContext> >> >> <bean id="deadLetterErrorHandler" >> class="org.apache.camel.builder.DeadLetterChannelBuilder"> >> <property name="deadLetterUri" value="seda:deadletterQueue"/> >> <property name="handled" value="false" /> >> </bean> >> >> .......... some processor beans ........ >> >> >> <bean id="propertyConfigurer" >> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> >> <property name="searchSystemEnvironment" value="true" /> >> </bean> >> >> <bean id="log4jInitialization" >> class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> >> <property name="targetClass" >> value="org.springframework.util.Log4jConfigurer" /> >> <property name="targetMethod" value="initLogging" /> >> <property name="arguments"> >> <list> >> >> <value>${SOME_HOME}/etc/config/log4j/log4j.properties</value> >> </list> >> </property> >> </bean> >> </beans> >> >> I end up having a DeadLetterChannel error handler in the >> seda:bondfloorPricePipeline (the one which has set the error handler at >> route level) and the DefaultErrorHandler anywhere else, which is not what we >> would expect, right ? (The routes themselves are working nicely without >> error handling configured.) >> >> Thank you, Christian. >> >> -----Original Message----- >> From: Claus Ibsen [mailto:[email protected]] >> Sent: Mittwoch, 26. August 2009 11:18 >> To: [email protected] >> Subject: Re: Global Error Handler Question. >> >> Hi >> >> It should really work as we got a ton of unit tests in relation to >> error handling. >> >> Could you post your spring xml file with the camel context and routes >> that you cannot get working? >> >> >> On Wed, Aug 26, 2009 at 11:02 AM, Bach >> Christian<[email protected]> wrote: >>> Heya guys >>> >>> I am trying to install a global error handler by setting : >>> >>> <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring" >>> errorHandlerRef="deadLetterErrorHandler"> >>> >>> in the camelContext, according to >>> http://camel.apache.org/error-handler.html the error handler is expected >>> to be inherited and being applicable in all the routes, ya ? >>> >>> But it is not, when inspecting stack traces I see the >>> DefaultErrorHandler still being applied in all my routes. When >>> configuring individual routes, like: >>> >>> <route errorHandlerRef="deadLetterErrorHandler"> >>> >>> things are working nicely and my stack traces for the particular route >>> do have the DeadLetterChannel installed. >>> >>> I must be doing something wrong in my attempt of globally configuring >>> matter. The Camel version used is 2.0.0 and the deadLetterErrorHandler >>> is configured like this: >>> >>> <bean id="deadLetterErrorHandler" >>> class="org.apache.camel.builder.DeadLetterChannelBuilder"> >>> <property name="deadLetterUri" value="seda:deadletterQueue"/> >>> <property name="handled" value="false" /> >>> </bean> >>> >>> Any help appreciated, thx, Christian. >>> >>> This message is for the named person's use only. It may contain >>> confidential, proprietary or legally privileged information. If you receive >>> this message in error, please notify the sender urgently and then >>> immediately delete the message and any copies of it from your system. >>> Please also immediately destroy any hardcopies of the message. >>> The sender's company reserves the right to monitor all e-mail >>> communications through their networks. >>> >> >> >> >> -- >> Claus Ibsen >> Apache Camel Committer >> >> Open Source Integration: http://fusesource.com >> Blog: http://davsclaus.blogspot.com/ >> Twitter: http://twitter.com/davsclaus >> > > > > -- > Claus Ibsen > Apache Camel Committer > > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus > -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus
