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
