Re: Camel multicast and exception

2015-03-09 Thread Claus Ibsen
Hi

You can turn this off on the error handler. It has many options to
turn this on | off.

You set LogStackTrace = false
http://camel.apache.org/redeliverypolicy.html

On Mon, Mar 9, 2015 at 10:18 AM, Desu, Kishore Kumar
kishorekumar.d...@mckesson.com wrote:
 Hi,

 Below route is giving exception with stackTrace and I want to restrict it to 
 provide only a message instead of stackTrace.
 Please me to fix it.
 ---
 route id=GetEvent
 from uri=restlet:///event/{eventId}?restletMethod=PUT /
 setExchangePattern pattern=InOnly /

 setProperty propertyName=eventid
 simple${header.eventId}/simple
 /setProperty

 setProperty propertyName=eventDesc
 simple${body}/simple
 /setProperty

 onException
 exceptionjava.lang.Exception/exception
 exceptionjava.sql.SQLException/exception
 redeliveryPolicy maximumRedeliveries=3 
 redeliveryDelay=3000/
 setBody
 simpleError on ${header.eventId}:${body}/simple
 /setBody
 to uri=mock:error/
 /onException

 multicast
 pipeline
 setHeader headerName=CamelHttpUri
 
 simple${properties:rest.uri}${header.eventId}/simple
 /setHeader

 setHeader headerName=CamelHttpMethod
 constantGET/constant
 /setHeader

 to uri=http://dummyhost/

 setBody
 simpleinsert into XX (ID, TYPE, SOURCE, 
 SUBMITTED_DT, STATUS, CONTROLS, PAYLOAD) values(SEQPW_SUBMISSIONS.NEXTVAL, 
 'events', 'CM', sysdate, 'NOT_PROCESSED', TO_CLOB('${property.eventDesc}'), 
 utl_raw.cast_to_raw('${body}'))/simple
 /setBody

 to uri=jdbc:db/
 /pipeline
 setBody
 simple${property.eventid}:${property.eventdesc}/simple
 /setBody
 to uri=activemq:topic:EventTopic /
 /multicast
 /route
 

 Thanks,
 Kishore Kumar Desu.



-- 
Claus Ibsen
-
Red Hat, Inc.
Email: cib...@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
hawtio: http://hawt.io/
fabric8: http://fabric8.io/


Re: Camel multicast and exception

2013-09-26 Thread Christian Posta
Take a look at try-catch block. Or try adding exception handlers to each
individual direct route?


On Thu, Sep 26, 2013 at 8:55 AM, Erwin Etchart erwin.etch...@gmail.comwrote:

 Based on this example of a camel route

 aggregate id=ag.2 strategyRef=second.aggregator.strategy
 aggregationRepositoryRef=aggregator.container.2 completionSize=2
 completionTimeout=36
 correlationExpression
 headeraggregationKey/header
 /correlationExpression
 multicast stopOnException=false  
 to uri=direct:1.IN.SPRING.REMOTING /
 to uri=direct:2.IN.SPRING.REMOTING /
 to uri=direct:3.IN.SPRING.REMOTING /
 /multicast
  /aggregate



 route autoStartup=true   
 from uri=direct:1.IN.SPRING.REMOTING /
 transform
 method bean=converter method=toTestRequest/
 /transform
 to uri=bean:spring.remote?method=springRemotingTest(${body})  /
 onCompletion onCompleteOnly=true 
 process ref=post.processor /
 to uri=jms:COMPLETED /
 /onCompletion

 /route

 route autoStartup=true  
 from uri=direct:2.IN.SPRING.REMOTING /
 transform
 method bean=converter method=toTestRequest/
 /transform
 to uri=bean:spring.remote?method=springRemotingTest2(${body}) /
 onCompletion onCompleteOnly=true 
 process ref=post.processor /
 to uri=jms:COMPLETED /
 /onCompletion

 /route


 route autoStartup=true   
 from uri=direct:3.IN.SPRING.REMOTING /
 transform
 method bean=converter method=toTestRequest/
 /transform
 to uri=bean:spring.remote?method=springRemotingTest3(${body}) /
 onCompletion onCompleteOnly=true  
 process ref=post.processor /
 to uri=jms:COMPLETED /
 /onCompletion
 /route

 I want to retry independent from each other if one fails. The behavior now
 is if one fails the three routes will be retried. I tried to do a custom
 error hander but the behavior was the same.

 ¿Any idea?

 Best regards

 Erwin




-- 
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta


Re: Camel multicast and exception

2013-09-26 Thread Erwin Etchart
Thanks for your response Christian,

Do you know if i try with try catch how can i do to define a  redelivery
police of this specific direct component?


Regards

Erwin




2013/9/26 Christian Posta christian.po...@gmail.com

 Take a look at try-catch block. Or try adding exception handlers to each
 individual direct route?


 On Thu, Sep 26, 2013 at 8:55 AM, Erwin Etchart erwin.etch...@gmail.com
 wrote:

  Based on this example of a camel route
 
  aggregate id=ag.2 strategyRef=second.aggregator.strategy
  aggregationRepositoryRef=aggregator.container.2 completionSize=2
  completionTimeout=36
  correlationExpression
  headeraggregationKey/header
  /correlationExpression
  multicast stopOnException=false  
  to uri=direct:1.IN.SPRING.REMOTING /
  to uri=direct:2.IN.SPRING.REMOTING /
  to uri=direct:3.IN.SPRING.REMOTING /
  /multicast
   /aggregate
 
 
 
  route autoStartup=true   
  from uri=direct:1.IN.SPRING.REMOTING /
  transform
  method bean=converter method=toTestRequest/
  /transform
  to uri=bean:spring.remote?method=springRemotingTest(${body})
  /
  onCompletion onCompleteOnly=true 
  process ref=post.processor /
  to uri=jms:COMPLETED /
  /onCompletion
 
  /route
 
  route autoStartup=true  
  from uri=direct:2.IN.SPRING.REMOTING /
  transform
  method bean=converter method=toTestRequest/
  /transform
  to uri=bean:spring.remote?method=springRemotingTest2(${body})
 /
  onCompletion onCompleteOnly=true 
  process ref=post.processor /
  to uri=jms:COMPLETED /
  /onCompletion
 
  /route
 
 
  route autoStartup=true   
  from uri=direct:3.IN.SPRING.REMOTING /
  transform
  method bean=converter method=toTestRequest/
  /transform
  to uri=bean:spring.remote?method=springRemotingTest3(${body})
 /
  onCompletion onCompleteOnly=true  
  process ref=post.processor /
  to uri=jms:COMPLETED /
  /onCompletion
  /route
 
  I want to retry independent from each other if one fails. The behavior
 now
  is if one fails the three routes will be retried. I tried to do a custom
  error hander but the behavior was the same.
 
  ¿Any idea?
 
  Best regards
 
  Erwin
 



 --
 *Christian Posta*
 http://www.christianposta.com/blog
 twitter: @christianposta



Re: Camel multicast and exception

2013-09-26 Thread Christian Posta
You can specify an error handler for the specific route which is where you
specify redelivery semantics:

http://camel.apache.org/error-handler.html


On Thu, Sep 26, 2013 at 9:33 AM, Erwin Etchart erwin.etch...@gmail.comwrote:

 Thanks for your response Christian,

 Do you know if i try with try catch how can i do to define a  redelivery
 police of this specific direct component?


 Regards

 Erwin




 2013/9/26 Christian Posta christian.po...@gmail.com

  Take a look at try-catch block. Or try adding exception handlers to each
  individual direct route?
 
 
  On Thu, Sep 26, 2013 at 8:55 AM, Erwin Etchart erwin.etch...@gmail.com
  wrote:
 
   Based on this example of a camel route
  
   aggregate id=ag.2 strategyRef=second.aggregator.strategy
   aggregationRepositoryRef=aggregator.container.2 completionSize=2
   completionTimeout=36
   correlationExpression
   headeraggregationKey/header
   /correlationExpression
   multicast stopOnException=false  
   to uri=direct:1.IN.SPRING.REMOTING
 /
   to uri=direct:2.IN.SPRING.REMOTING
 /
   to uri=direct:3.IN.SPRING.REMOTING
 /
   /multicast
/aggregate
  
  
  
   route autoStartup=true   
   from uri=direct:1.IN.SPRING.REMOTING /
   transform
   method bean=converter method=toTestRequest/
   /transform
   to uri=bean:spring.remote?method=springRemotingTest(${body})
   /
   onCompletion onCompleteOnly=true 
   process ref=post.processor /
   to uri=jms:COMPLETED /
   /onCompletion
  
   /route
  
   route autoStartup=true  
   from uri=direct:2.IN.SPRING.REMOTING /
   transform
   method bean=converter method=toTestRequest/
   /transform
   to
 uri=bean:spring.remote?method=springRemotingTest2(${body})
  /
   onCompletion onCompleteOnly=true 
   process ref=post.processor /
   to uri=jms:COMPLETED /
   /onCompletion
  
   /route
  
  
   route autoStartup=true   
   from uri=direct:3.IN.SPRING.REMOTING /
   transform
   method bean=converter method=toTestRequest/
   /transform
   to
 uri=bean:spring.remote?method=springRemotingTest3(${body})
  /
   onCompletion onCompleteOnly=true  
   process ref=post.processor /
   to uri=jms:COMPLETED /
   /onCompletion
   /route
  
   I want to retry independent from each other if one fails. The behavior
  now
   is if one fails the three routes will be retried. I tried to do a
 custom
   error hander but the behavior was the same.
  
   ¿Any idea?
  
   Best regards
  
   Erwin
  
 
 
 
  --
  *Christian Posta*
  http://www.christianposta.com/blog
  twitter: @christianposta
 




-- 
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta


Re: Camel multicast and exception

2013-09-26 Thread Erwin Etchart
Thanks , i will try that.

Regards

Erwin


2013/9/26 Christian Posta christian.po...@gmail.com

 You can specify an error handler for the specific route which is where you
 specify redelivery semantics:

 http://camel.apache.org/error-handler.html


 On Thu, Sep 26, 2013 at 9:33 AM, Erwin Etchart erwin.etch...@gmail.com
 wrote:

  Thanks for your response Christian,
 
  Do you know if i try with try catch how can i do to define a
  redelivery
  police of this specific direct component?
 
 
  Regards
 
  Erwin
 
 
 
 
  2013/9/26 Christian Posta christian.po...@gmail.com
 
   Take a look at try-catch block. Or try adding exception handlers to
 each
   individual direct route?
  
  
   On Thu, Sep 26, 2013 at 8:55 AM, Erwin Etchart 
 erwin.etch...@gmail.com
   wrote:
  
Based on this example of a camel route
   
aggregate id=ag.2 strategyRef=second.aggregator.strategy
aggregationRepositoryRef=aggregator.container.2 completionSize=2
completionTimeout=36
correlationExpression
headeraggregationKey/header
/correlationExpression
multicast stopOnException=false  
to uri=direct:1.IN.SPRING.REMOTING
  /
to uri=direct:2.IN.SPRING.REMOTING
  /
to uri=direct:3.IN.SPRING.REMOTING
  /
/multicast
 /aggregate
   
   
   
route autoStartup=true   
from uri=direct:1.IN.SPRING.REMOTING /
transform
method bean=converter method=toTestRequest/
/transform
to
 uri=bean:spring.remote?method=springRemotingTest(${body})
/
onCompletion onCompleteOnly=true 
process ref=post.processor /
to uri=jms:COMPLETED /
/onCompletion
   
/route
   
route autoStartup=true  
from uri=direct:2.IN.SPRING.REMOTING /
transform
method bean=converter method=toTestRequest/
/transform
to
  uri=bean:spring.remote?method=springRemotingTest2(${body})
   /
onCompletion onCompleteOnly=true 
process ref=post.processor /
to uri=jms:COMPLETED /
/onCompletion
   
/route
   
   
route autoStartup=true   
from uri=direct:3.IN.SPRING.REMOTING /
transform
method bean=converter method=toTestRequest/
/transform
to
  uri=bean:spring.remote?method=springRemotingTest3(${body})
   /
onCompletion onCompleteOnly=true  
process ref=post.processor /
to uri=jms:COMPLETED /
/onCompletion
/route
   
I want to retry independent from each other if one fails. The
 behavior
   now
is if one fails the three routes will be retried. I tried to do a
  custom
error hander but the behavior was the same.
   
¿Any idea?
   
Best regards
   
Erwin
   
  
  
  
   --
   *Christian Posta*
   http://www.christianposta.com/blog
   twitter: @christianposta
  
 



 --
 *Christian Posta*
 http://www.christianposta.com/blog
 twitter: @christianposta