You can use a predicate in the continued(true) so you use the code to decide whether to continue or not.
On Thu, Nov 19, 2015 at 12:08 AM, Ishada <[email protected]> wrote: > > I am using Camel in the integration Project to connect it to the Http > Endpoint. Now I am trying to implement a scenario such as when ever there is > an exception while connecting to the HTTP endpoint , I should use the status > code to decide whether to try re-delivery or else continue the route. Here > is how am I trying to implement > > onException(HttpOperationFailedException.class) > .retryAttemptedLogLevel(LoggingLevel.DEBUG) > .onWhen(new Predicate() { > @Override > public boolean matches(Exchange exchange) { > > HttpOperationFailedException e = exchange.getProperty( > Exchange.EXCEPTION_CAUGHT, > HttpOperationFailedException.class); > > if (e.getStatusCode() == 400) > return true; > return false; > } > }).continued(true).maximumRedeliveries(2); > > The problem is when ever the Predicate return false the route is stop. what > I am trying to achieve is to continue the route. > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Exception-Handling-in-camel-onWhen-tp5774076.html > Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2
