Hello,

i've got a real ugly problem right now as i try to use the camel 
onException(....) in my j2ee-application on a specific route on a webapp in
websphere 6.1-Server.

My Routedefinition is:
                from(routeStart).
                        routeId("pserun.fullrun.route").
                        
onException(PSENoWorkloadException.class).handled(true).bean(bean,
"finalizeRun").setBody(constant(NOWORKLOAD)).end().
                
onException(PSERunActiveException.class).handled(true).setBody(constant(ACTIVERUN)).end().
                        inOut().
                        to("zlog:com.innoq.zifs?level=info").
                        setHeader("chunksize", constant(sizeofchunk)).
                        bean(bean, "createNewPSERun").
                        bean(bean, "getActivePSERun").  
                        bean(bean, "createNewChunks").
                        split(body()).
                        to(wlDistributor).
                        setBody().simple(STARTED);

What i try to do is catch both exceptions, handle them differently, set a
string on the body and put that back to the caller (is inout).

The (almost) final "to" to wlDistributor goes to a JMS-WebSphereMQ.
The ugly thing is that is doesn't allow to use setExceptionListener() on the
JMS-endpoint, which is obviously used, when using onException anywhere.

Any tries to use JMS-Call (which is done in the following stacktrace) in a
different route called from this one, have not been successful... 

I only need to handle those Exceptions on the bean-calls in between.
I even tried doTry() and so on - but it ends up the same. 

How can i tell camel to stop the use of exceptionlistener at some point?

Please help !

i get the following exception:
[27.05.10 14:12:54:030 CEST] 000014c5 SedaConsumer  E
org.apache.camel.processor.Logger log Error processing exchange.
Exchange[Message: com.innoq.zifs.pserun.model.wlch...@59e059e]. Caused by:
[org.apache.camel.FailedToCreateProducerException - Failed to create
Producer for endpoint: Endpoint[ibmmqvsl://queue:DEB.VSL.ZIFS.PSEWL.ARE].
Reason: org.springframework.jms.IllegalStateException: Method
setExceptionListener not permitted; nested exception is
javax.jms.IllegalStateException: Method setExceptionListener not permitted]
                                
org.apache.camel.FailedToCreateProducerException: Failed to create Producer
for endpoint: Endpoint[ibmmqvsl://queue:DEB.VSL.ZIFS.PSEWL.ARE]. Reason:
org.springframework.jms.IllegalStateException: Method setExceptionListener
not permitted; nested exception is javax.jms.IllegalStateException: Method
setExceptionListener not permitted
        at
org.apache.camel.component.jms.JmsProducer.testAndSetRequestor(JmsProducer.java:116)
        at
org.apache.camel.component.jms.JmsProducer.processInOut(JmsProducer.java:175)
        at 
org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:147)
        at
org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97)
        at
org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95)
        at 
org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146)
        at
org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94)
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82)
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
        at
org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53)
        at
org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82)
        at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93)
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
        at
org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177)
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143)
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88)
        at
org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
        at
org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228)
        at
org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:66)
        at
org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67)
        at
org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:161)
        at 
org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:109)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:678)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:703)
        at java.lang.Thread.run(Thread.java:811)
Caused by: org.springframework.jms.IllegalStateException: Method
setExceptionListener not permitted; nested exception is
javax.jms.IllegalStateException: Method setExceptionListener not permitted
        at
org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:271)
        at
org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168)
        at
org.springframework.jms.listener.AbstractJmsListeningContainer.initialize(AbstractJmsListeningContainer.java:180)
        at
org.springframework.jms.listener.AbstractJmsListeningContainer.afterPropertiesSet(AbstractJmsListeningContainer.java:134)
        at
org.apache.camel.component.jms.requestor.Requestor.doStart(Requestor.java:205)

...



-- 
View this message in context: 
http://old.nabble.com/Method-setExceptionListener-not-permitted-in-J2EE-Servers-tp28693246p28693246.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to