Hi Christian How would I do that? (sorry, Camel beginner :-)
Stefan On Fri, Mar 23, 2012 at 10:18, Christian Schneider <ch...@die-schneider.net> wrote: > Perhaps you can mark the route as inout. So the cxf from endpoint could get > the response but of course does not have to reply. > > I think for transacted routes we should make this the default. Can you open > a jira issue for that? > > Christian > > Am 23.03.2012 09:49, schrieb Stefan Burkard: > >> My problem seems to be that, with MEP InOnly, a CXF endpoint consuming >> from a queue does not "see" an exception that occurs later in the >> route and therefore commits the consumptions to the queue. >> >> Does anybody know how I can make this exception visible to CXF? I >> think this should be possible, otherwise it would not be possible to >> read asynchronous and transacted with CXF from a queue. >> >> Thanks >> Stefan >> >> >> On Wed, Mar 21, 2012 at 17:26, Stefan Burkard<sburk...@gmail.com> wrote: >>> >>> Hi Willem >>> >>> I suspected something like this - I am a Camel beginner and therefore >>> didn't know if this is a bug or a feature :-) >>> >>> My case is to make the following routes transactional: >>> 1. I am consuming messages with a CXF bean endpoint from an ActiveMQ >>> queue to get an unmarshalled Exchange (the producer sends - fire and >>> forget - SOAP messages with mtom attachments to the queue) >>> 2. I am sending the Exchanges with ".to(direct:...)" to the main route >>> of my module >>> 3. The main route processes the Exchanges >>> >>> To check how these routes behave under error conditions, I am >>> injecting intentionally an exception into the direct-endpoint >>> (to"direct:...") of the first route. Therefore I am getting (as >>> expected) the exception and afterwards the queue is empty. This means >>> my route is not secured against message loss. If I understand you >>> correctly, the exception that occurs during route-processing is not >>> recoginsed by the CXF-consumer and therefore the consumer commits the >>> message consumption to the queue. >>> >>> So, how can I make this asynchronous SOAP over JMS usecase >>> transactional so that the message remains in the queue if an error >>> occurs during route processing? >>> >>> Thanks for your help >>> Stefan >>> >>> >>> On Wed, Mar 21, 2012 at 14:23, Willem Jiang<willem.ji...@gmail.com> >>> wrote: >>>> >>>> If you are using inOnly MEP, camel-cxf producer will not know any thing >>>> about the exception. >>>> I'm not sure what kind of error that you get. >>>> >>>> >>>> >>>> On 3/21/12 5:54 PM, Burkard Stephan wrote: >>>>> >>>>> Hello >>>>> >>>>> I try to get running a SOAP over JMS usecase with the configuration >>>>> outlined here: >>>>> >>>>> http://camel.apache.org/better-jms-transport-for-cxf-webservice-using-ap >>>>> ache-camel.html >>>>> >>>>> <http://camel.apache.org/better-jms-transport-for-cxf-webservice-using-a >>>>> pache-camel.html> >>>>> >>>>> My webservice is InOnly, it does not respond to requests. The client >>>>> therefore sends SOAP messages to a queue without waiting for an answer. >>>>> On the server side camel consumes the messages. >>>>> >>>>> I tried to test transaction behaviour of my camel routes with unittests >>>>> where I advice the route with exceptions that occur at specific >>>>> entpoints. This works fine when I consume from the queue directly >>>>> (activemq:queue:...). If an error occurs the message is not commited >>>>> and >>>>> it stays in the queue. >>>>> When I use a CXF endpoint to consume messages (cxf:bean:...), messages >>>>> are lost when an exception occurs. They seem to be commited in activemq >>>>> before or despite an error occurs. >>>>> Therefore I tried to read first from the queue directly, forward the >>>>> message to a direct endpoint and consume the messages with CXF from the >>>>> direct endpoint. But in this case the message is also lost if an error >>>>> occurs after consuming the message with CXF. >>>>> >>>>> Before posting routes and configuration details, I just would like to >>>>> know if this is "normal" behaviour of the CXF endpoint with inOnly MEP >>>>> or if the messages should stay in the queue as I expect? >>>>> >>>>> Perhaps this is the same problem as described in this thread: >>>>> >>>>> http://camel.465427.n5.nabble.com/CXF-Camel-JMS-Endpoint-exception-handl >>>>> ing-td4471175.html >>>>> >>>>> <http://camel.465427.n5.nabble.com/CXF-Camel-JMS-Endpoint-exception-hand >>>>> ling-td4471175.html> ? >>>>> >>>>> Thanks for your help >>>>> Stefan >>>>> >>>> >>>> -- >>>> Willem >>>> ---------------------------------- >>>> FuseSource >>>> Web: http://www.fusesource.com >>>> Blog: http://willemjiang.blogspot.com (English) >>>> http://jnn.javaeye.com (Chinese) >>>> Twitter: willemjiang >>>> Weibo: willemjiang > > > > -- > Christian Schneider > http://www.liquid-reality.de > > Open Source Architect > Talend Application Integration Division http://www.talend.com >