Hi,

I would like to implement the following route with Camel 1.6 :

from("direct:endpointA")
.setHeader(HttpProducer.HTTP_URI).simple("http://myAddressA";)
.to("http://xxxxxx";)
.to("direct:endPointB")

from("direct:endpointB")
.setHeader(HttpProducer.HTTP_URI).simple("http://myAddressB";)
.to("http://xxxxxx";)
.to("direct:endPointC")

from("direct:endPointC")
.to("xquery:response.xml");

This route works fine if both URLs : http://myAddressA and
http://myAddressBare accessible and no error occurs during the
invocation.
Unfortunately, sometimes these services become unreachable and I would like
to try other URLs until getting valid answer:

If an exception happens when calling the URL http:/:myAddressA, I would like
to attempt other URLs : myAddressA1, myAddressA2, ...until getting valid
HTTP response.
The same thing with myAddressB ==> myAddressB1, myAddressB2, ...

With java this could be simply coded like following :

try
{
  call_http(myAddressA)
}
catch(Throwable th)
{
     try
      {
        call_http(myAddressA1)
      }
      catch(Exception x)
      {
           //Call addressA2
           ....
      }
}

I've tried the onException() mechanism and the deadLetterChannel processor
but I never get working my route.

Reply via email to