Re: Camel Quartz Query
Hi Can you use an idempotent consumer[1] before sending to the web service? http://camel.apache.org/idempotent-consumer.html If you did have a sort of 'busy' status, you'd have to handle the situation where records are left in that 'busy' state due to a JVM crash for example. Taariq On Wed, Sep 25, 2013 at 5:20 PM, gilboy josephoto...@gmail.com wrote: Hi I have a quartz job(stateful) which wakes up every 60 seconds, pulls unprocessed records from a DB and sends each of them to a Web Service Endpoint. The Web Service call introduces a latency of approx .5 sec. Each time the quartz job fires there can be 100's of unprocessed records. Hence, after retrieving the records I iterate over the records via the splitter and I load balance(sticky - need to maintain order across subsets of the records) to 10 different seda queues. I then have 10 different routes which takes from each of the queues, transmits the message to the web service endpoint and then updates the record to be in a processed state. However, with the above approach I could easily send duplicates to the web service endpoint because a record which is returned when the quartz job fires at time 0 could be sitting on one of the seda queues at time 60 when the quartz job fires again and hence it is still in an unprocessed state in the database as it only gets updated to processed when we get a response from the Web Service call. I could solve this by introducing a new interim status and have the DB update the unprocessed records to the new interim status but just wanted to check to see if there was any other way of solving this as I have less control over the DB Thanks Joe -- View this message in context: http://camel.465427.n5.nabble.com/Camel-Quartz-Query-tp5740206.html Sent from the Camel - Users mailing list archive at Nabble.com.
CAMEL-SOAP uses wrong namespace
Hi, I have an existing web-service-client (spring-ws+JAXB) that I want to replace with camel. The XSD needed for this WS uses different namespaces for request/response and fault. While trying to migrate to camel/camel-soap, I encountered the following problem: Request/Response NS: foo Fault NS: bar Route: public void configure() throws Exception { SoapJaxbDataFormat soap = new SoapJaxbDataFormat(Request.class.getPackage().getName()); //soap.setVersion(1.2); //JaxbDataFormat soap = new JaxbDataFormat(Request.class.getPackage().getName()); from(direct:someService) .marshal(soap) .setHeader(SOAP_ACTION, constant(baz)) .setHeader(Exchange.CONTENT_TYPE, constant(ContentType.create(text/xml, Consts.UTF_8).toString())) .to(wsUrl) .unmarshal(soap) } If using the SoapJaxbDataFormat, the resulting xml looks like: ?xml version=1.0 encoding=UTF-8 standalone=yes? ns2:Envelope xmlns:ns2=http://www.w3.org/2003/05/soap-envelope; xmlns:ns3=foo ns2:Body ns4:request xmlns:ns4=bar ... Which is incorrect, since the NS for request must be foo. The XJC-generated request-class I am using contains an @XmlRootElement annotation with the correct NS. Out of curiosity, I tried JaxbDataFormat for marshalling, the result is correct and I receive: ns2:request xmlns:ns2=foo Environment: OS: Windows 7 / 64bit Camel-Version: 2.12.1 JDK6 Any help is appreciated. Regards, Tom
using field as key+value on the BeanIo
Hi All, I am using BeanIO for defining the file format while marshal/writing my output stream.Here each field of a particular record is some sort of a key/Value and separated by a delimiter. Here key is the Tag code(e.g. AC) and value is tag description either blank or represent a database field(e.g. account no) so record will be AC23456 I am using a pojo class which maps the BeanIo fields.But as each field is actually consists of two fields one is a constant and other comes from database.It is being hard to define it. Please share your knowledge if you have.It will really save my lot of time. Thanks, Sanjeev -- View this message in context: http://camel.465427.n5.nabble.com/using-field-as-key-value-on-the-BeanIo-tp5740226.html Sent from the Camel - Users mailing list archive at Nabble.com.
[BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath.
Hello, I'm trying to implement a polling JPA endpoint like this: from(jpa:...?scheduler=quartz2scheduler.cron=0+0+0+0+JAN,APR,JUL,OCT+*+*).marshal().jaxb().to(mock:xml); I'm included the camel-quartz2 dependency in my project; however, when I run it, I get the following error: Cannot load org.apache.camel.pollconsumer.quartz2.QuartzScheduledPollConsumerScheduler from classpath. Make sure camel-quarz2.jar is on the classpath. If I browse camel-quartz2.jar there is no pollconsumer package. Is it a bug or should I include another dependency? Regards, Alessandro. -- View this message in context: http://camel.465427.n5.nabble.com/BUG-Quartz2-Make-sure-camel-quarz2-jar-is-on-the-classpath-tp5740227.html Sent from the Camel - Users mailing list archive at Nabble.com.
CAmel : Using Springg DSL to fetch atom feeds. But not working
Hi, I'm using *atom* component to fetch feeds using Spring DSL but getting below error. Please help me with this error hope i'm not doing anything wrong. I have already added all the dependencies required for fetching feeds. If particular version is need for any dependency kindly let me know Error [9/26/13 16:38:13:136 IST] 0136 SystemOut O [ogspot.com/feeds/posts/default] AtomEntryPollingConsumer WARN Consumer Consumer[atom://http://macstrac.blogspot.com/feeds/posts/default] failed polling endpoint: Endpoint[atom://http://macstrac.blogspot.com/feeds/posts/default]. Will try again at next poll. Caused by: [java.lang.NoSuchMethodError - org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V] java.lang.NoSuchMethodError: org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V at org.apache.abdera.parser.stax.FOMProcessingInstruction.init(FOMProcessingInstruction.java:33) at org.apache.abdera.parser.stax.FOMFactory.createOMProcessingInstruction(FOMFactory.java:697) at org.apache.axiom.om.impl.builder.StAXOMBuilder.createPI(StAXOMBuilder.java:538) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:282) at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:93) at org.apache.abdera.parser.stax.FOMBuilder.getFomDocument(FOMBuilder.java:117) at org.apache.abdera.parser.stax.FOMParser.getDocument(FOMParser.java:79) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:191) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:124) at org.apache.abdera.util.AbstractParser.parse(AbstractParser.java:65) at org.apache.camel.component.atom.AtomUtils.parseDocument(AtomUtils.java:60) at org.apache.camel.component.atom.AtomEntryPollingConsumer.getDocument(AtomEntryPollingConsumer.java:43) at org.apache.camel.component.atom.AtomEntryPollingConsumer.createFeed(AtomEntryPollingConsumer.java:65) at org.apache.camel.component.feed.FeedEntryPollingConsumer.poll(FeedEntryPollingConsumer.java:47) at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:187) at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:114) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:452) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:328) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:161) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:109) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:192) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:216) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919) at java.lang.Thread.run(Thread.java:769) [9/26/13 16:39:13:356 IST] 0136 SystemOut O [ogspot.com/feeds/posts/default] AtomEntryPollingConsumer WARN Consumer Consumer[atom://http://macstrac.blogspot.com/feeds/posts/default] failed polling endpoint: Endpoint[atom://http://macstrac.blogspot.com/feeds/posts/default]. Will try again at next poll. Caused by: [java.lang.NoSuchMethodError - org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V] java.lang.NoSuchMethodError: org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V at org.apache.abdera.parser.stax.FOMProcessingInstruction.init(FOMProcessingInstruction.java:33) at org.apache.abdera.parser.stax.FOMFactory.createOMProcessingInstruction(FOMFactory.java:697) at org.apache.axiom.om.impl.builder.StAXOMBuilder.createPI(StAXOMBuilder.java:538) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:282) at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:93) at org.apache.abdera.parser.stax.FOMBuilder.getFomDocument(FOMBuilder.java:117) at org.apache.abdera.parser.stax.FOMParser.getDocument(FOMParser.java:79) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:191) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:124) at org.apache.abdera.util.AbstractParser.parse(AbstractParser.java:65) at
Re: Mocking CXF service with XSLT
Jens wrote Hi, I'm trying to implement a CXF JAX-WS service using an XSL transformation, ie. from(cxf:bean:...).to(xslt:...); The CXF endpoint has a JMSConfiguration with a replyDestination attached and I also tried setting exchangePattern=InOut explicitly but unfortunately, in either case, CXF does not put the reply on the reply queue and the exchange ends with no output whatsoever. The last log output I get from CXF is Invkoing handleMessage on interceptor org.apache.cxf.interceptor.OutgoingChainInterceptor@X Any idea why the response isn't sent back? Is there anything I need to do to prepare the response message for the CXF endpoint. Fwiw, I also tried converting the (string) transformation result to a CxfPayload but that didn't make any difference. Camel version used is 2.8.4. Thanks, Jens I think I figured it out. It seems to be related to bugs in the integration of CXF asynchronous mode again. If I switch the receiving CXF JMS endpoint to synchronous, this works as expected. Jens -- View this message in context: http://camel.465427.n5.nabble.com/Mocking-CXF-service-with-XSLT-tp5740205p5740234.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Mocking CXF service with XSLT
Put together a sample route/test case and I can dig into it for you. On Wed, Sep 25, 2013 at 8:10 AM, Jens smix...@dzbank.de wrote: Hi, I'm trying to implement a CXF JAX-WS service using an XSL transformation, ie. from(cxf:bean:...).to(xslt:...); The CXF endpoint has a JMSConfiguration with a replyDestination attached and I also tried setting exchangePattern=InOut explicitly but unfortunately, in either case, CXF does not put the reply on the reply queue and the exchange ends with no output whatsoever. The last log output I get from CXF is Invkoing handleMessage on interceptor org.apache.cxf.interceptor.OutgoingChainInterceptor@X Any idea why the response isn't sent back? Is there anything I need to do to prepare the response message for the CXF endpoint. Fwiw, I also tried converting the (string) transformation result to a CxfPayload but that didn't make any difference. Camel version used is 2.8.4. Thanks, Jens -- View this message in context: http://camel.465427.n5.nabble.com/Mocking-CXF-service-with-XSLT-tp5740205.html Sent from the Camel - Users mailing list archive at Nabble.com. -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
Re: CAmel : Using Springg DSL to fetch atom feeds. But not working
what version of camel are you using and are there any dependency version clashes on the classpath? On Thu, Sep 26, 2013 at 4:30 AM, Ankur ankur.b.aggar...@accenture.comwrote: Hi, I'm using *atom* component to fetch feeds using Spring DSL but getting below error. Please help me with this error hope i'm not doing anything wrong. I have already added all the dependencies required for fetching feeds. If particular version is need for any dependency kindly let me know Error [9/26/13 16:38:13:136 IST] 0136 SystemOut O [ogspot.com/feeds/posts/default] AtomEntryPollingConsumer WARN Consumer Consumer[atom://http://macstrac.blogspot.com/feeds/posts/default] failed polling endpoint: Endpoint[atom://http://macstrac.blogspot.com/feeds/posts/default]. Will try again at next poll. Caused by: [java.lang.NoSuchMethodError - org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V] java.lang.NoSuchMethodError: org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V at org.apache.abdera.parser.stax.FOMProcessingInstruction.init(FOMProcessingInstruction.java:33) at org.apache.abdera.parser.stax.FOMFactory.createOMProcessingInstruction(FOMFactory.java:697) at org.apache.axiom.om.impl.builder.StAXOMBuilder.createPI(StAXOMBuilder.java:538) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:282) at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:93) at org.apache.abdera.parser.stax.FOMBuilder.getFomDocument(FOMBuilder.java:117) at org.apache.abdera.parser.stax.FOMParser.getDocument(FOMParser.java:79) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:191) at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:124) at org.apache.abdera.util.AbstractParser.parse(AbstractParser.java:65) at org.apache.camel.component.atom.AtomUtils.parseDocument(AtomUtils.java:60) at org.apache.camel.component.atom.AtomEntryPollingConsumer.getDocument(AtomEntryPollingConsumer.java:43) at org.apache.camel.component.atom.AtomEntryPollingConsumer.createFeed(AtomEntryPollingConsumer.java:65) at org.apache.camel.component.feed.FeedEntryPollingConsumer.poll(FeedEntryPollingConsumer.java:47) at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:187) at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:114) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:452) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:328) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:161) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:109) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:192) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:216) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919) at java.lang.Thread.run(Thread.java:769) [9/26/13 16:39:13:356 IST] 0136 SystemOut O [ogspot.com/feeds/posts/default] AtomEntryPollingConsumer WARN Consumer Consumer[atom://http://macstrac.blogspot.com/feeds/posts/default] failed polling endpoint: Endpoint[atom://http://macstrac.blogspot.com/feeds/posts/default]. Will try again at next poll. Caused by: [java.lang.NoSuchMethodError - org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V] java.lang.NoSuchMethodError: org/apache/axiom/om/impl/llom/OMProcessingInstructionImpl.init(Lorg/apache/axiom/om/OMContainer;Ljava/lang/String;Ljava/lang/String;Lorg/apache/axiom/om/OMFactory;Z)V at org.apache.abdera.parser.stax.FOMProcessingInstruction.init(FOMProcessingInstruction.java:33) at org.apache.abdera.parser.stax.FOMFactory.createOMProcessingInstruction(FOMFactory.java:697) at org.apache.axiom.om.impl.builder.StAXOMBuilder.createPI(StAXOMBuilder.java:538) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:282) at org.apache.abdera.parser.stax.FOMBuilder.next(FOMBuilder.java:93) at org.apache.abdera.parser.stax.FOMBuilder.getFomDocument(FOMBuilder.java:117) at
Re: Camel Quartz Query
+1 idempotent consumer. that should work nicely. On Wed, Sep 25, 2013 at 10:59 PM, Taariq Levack taar...@gmail.com wrote: Hi Can you use an idempotent consumer[1] before sending to the web service? http://camel.apache.org/idempotent-consumer.html If you did have a sort of 'busy' status, you'd have to handle the situation where records are left in that 'busy' state due to a JVM crash for example. Taariq On Wed, Sep 25, 2013 at 5:20 PM, gilboy josephoto...@gmail.com wrote: Hi I have a quartz job(stateful) which wakes up every 60 seconds, pulls unprocessed records from a DB and sends each of them to a Web Service Endpoint. The Web Service call introduces a latency of approx .5 sec. Each time the quartz job fires there can be 100's of unprocessed records. Hence, after retrieving the records I iterate over the records via the splitter and I load balance(sticky - need to maintain order across subsets of the records) to 10 different seda queues. I then have 10 different routes which takes from each of the queues, transmits the message to the web service endpoint and then updates the record to be in a processed state. However, with the above approach I could easily send duplicates to the web service endpoint because a record which is returned when the quartz job fires at time 0 could be sitting on one of the seda queues at time 60 when the quartz job fires again and hence it is still in an unprocessed state in the database as it only gets updated to processed when we get a response from the Web Service call. I could solve this by introducing a new interim status and have the DB update the unprocessed records to the new interim status but just wanted to check to see if there was any other way of solving this as I have less control over the DB Thanks Joe -- View this message in context: http://camel.465427.n5.nabble.com/Camel-Quartz-Query-tp5740206.html Sent from the Camel - Users mailing list archive at Nabble.com. -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
Re: Starting method when transfer completes
The file component (ftp derives from it) keeps track of batch size and batch index... that is.. the number of files it grabbed per poll...you could use those numbers + and aggregator or resequencer or something to determine whether you've processed all the files, then call to a bean: component of processor(); On Tue, Sep 24, 2013 at 9:48 AM, Bratislav Stojanovic bratislav1...@gmail.com wrote: Hi all, I'm fetching some data every 30 secs from my FTP server into my local folder using a simple rule and that works fine. I would like now to start a method from one of my classes when (and only if) transfer completes successfully. What is the best way to achieve that? By using .process or? What happens if transfer fails after a couple of files (for instance internet drops down)? Thank you. -- Bratislav Stojanovic, M.Sc. -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
Re: CAmel : Using Springg DSL to fetch atom feeds. But not working
Hi As Christian has already said, the axiom jar version being on the classpath is clashing, e.g. camel-atom 2.12.1 uses axiom version 1.2.14, that's the jar axiom-api-1.2.14.jar. Maybe try to find out which exact version of this jar you have on the classpath as your app is running, e.g. using 'mvn dependency:tree' etc. Babak Ankur wrote Its a maven project and i am using 2.12.1 (camel) and 3.2.4 (spring) version. There are no dependency clashes on classpath. -- View this message in context: http://camel.465427.n5.nabble.com/CAmel-Using-Springg-DSL-to-fetch-atom-feeds-But-not-working-tp5740228p5740241.html Sent from the Camel - Users mailing list archive at Nabble.com.
Is it possible to retrieve a stream for a Exchange Body?
Hey there, I'm experimenting and creating my own component to use Apache Tika. Now I was wondering if it's possible to retrieve a stream for a Exchange Body? I'm trying like this right now but doesn't seem to do the job: InputStream is = exchange.getIn().getBody(java.io.InputStream.class); I'm using Camel's DefaultComponent and DefaultProducer. Maybe I should be using the StreamProducer? Can anybody get me on the right direction? Thanks , Niels -- View this message in context: http://camel.465427.n5.nabble.com/Is-it-possible-to-retrieve-a-stream-for-a-Exchange-Body-tp5740229.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: [BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath.
Hi Thanks for looking into this and raising the JIRA, yes indeed bunch of the classes of camel-quartz2.jar are missing inside the 2.12.0 / 2.12.1 jars on the central. Babak abaldoni wrote Hello, I'm trying to implement a polling JPA endpoint like this: from(jpa:...?scheduler=quartz2scheduler.cron=0+0+0+0+JAN,APR,JUL,OCT+*+*).marshal().jaxb().to(mock:xml); I've included the camel-quartz2 dependency in my project; however, when I run it, I get the following error: Cannot load org.apache.camel.pollconsumer.quartz2.QuartzScheduledPollConsumerScheduler from classpath. Make sure camel-quarz2.jar is on the classpath. If I browse camel-quartz2.jar there is no pollconsumer package. Is it a bug or should I include another dependency? Regards, Alessandro. * Update: * I've browsed the source code and the QuartzScheduledPollConsumerScheduler is there. Is it a jar packaging problem? * Update 2: * I've opened a bug in the Camel JIRA. (CAMEL-6789) -- View this message in context: http://camel.465427.n5.nabble.com/BUG-Quartz2-Make-sure-camel-quarz2-jar-is-on-the-classpath-tp5740227p5740242.html Sent from the Camel - Users mailing list archive at Nabble.com.
RE: CAMEL-SOAP uses wrong namespace
Hi, I was able to trace the problem to org.apache.camel.dataformat.soap.name.TypeNameStrategy, which is responsible to find the namespace for a given type. In my case, I had an XJC-generated class that did have an (almost empty) @XmlType and an @XmlRootElement with name and namespace. The problem was that TypeNameStrategy took the name from the @XmlRootElement and the namespace from @XmlSchema in package-info (generated by xjc). Unfortunately package-info did not contain the correct namespace and that's why an invalid request was assembled. I am not sure whether TypeNameStrategy is working correctly but I was able to solve my Problem with a custom ElementNameStrategy. Regards, Tom -Original Message- Hi, I have an existing web-service-client (spring-ws+JAXB) that I want to replace with camel. The XSD needed for this WS uses different namespaces for request/response and fault. While trying to migrate to camel/camel-soap, I encountered the following problem: Request/Response NS: foo Fault NS: bar Route: public void configure() throws Exception { SoapJaxbDataFormat soap = new SoapJaxbDataFormat(Request.class.getPackage().getName()); //soap.setVersion(1.2); //JaxbDataFormat soap = new JaxbDataFormat(Request.class.getPackage().getName()); from(direct:someService) .marshal(soap) .setHeader(SOAP_ACTION, constant(baz)) .setHeader(Exchange.CONTENT_TYPE, constant(ContentType.create(text/xml, Consts.UTF_8).toString())) .to(wsUrl) .unmarshal(soap) } If using the SoapJaxbDataFormat, the resulting xml looks like: ?xml version=1.0 encoding=UTF-8 standalone=yes? ns2:Envelope xmlns:ns2=http://www.w3.org/2003/05/soap-envelope; xmlns:ns3=foo ns2:Body ns4:request xmlns:ns4=bar ... Which is incorrect, since the NS for request must be foo. The XJC-generated request-class I am using contains an @XmlRootElement annotation with the correct NS. Out of curiosity, I tried JaxbDataFormat for marshalling, the result is correct and I receive: ns2:request xmlns:ns2=foo Environment: OS: Windows 7 / 64bit Camel-Version: 2.12.1 JDK6 Any help is appreciated. Regards, Tom
Re: CAmel : Using Springg DSL to fetch atom feeds. But not working
Its a maven project and i am using 2.12.1 (camel) and 3.2.4 (spring) version. There are no dependency clashes on classpath. -- View this message in context: http://camel.465427.n5.nabble.com/CAmel-Using-Springg-DSL-to-fetch-atom-feeds-But-not-working-tp5740228p5740239.html Sent from the Camel - Users mailing list archive at Nabble.com.
Dynamic generation of URI in enricher
Hi All, I would like to use enricher along with dynamic URI (See sample XML below), where the URI is my custom endpoint. I know we can't do the same in camel:to and we would need to use it camel:recipientList (http://camel.apache.org/how-do-i-use-dynamic-uri-in-to.html) camelContext id=test streamCache=true route from uri=file:///tmp/inbox/ setHeader header=id xpath resultType=java.lang.String//result/@id/xpath /setHeader enrich uri=mySql:operation=querySyncquery=SELECT * FROM MyTable WHERE id = '${header.id}' strategyRef=query-service/ to uri=file:///tmp/outbox/ /route /camelContext Or I need to handle in my custom endpoint? Thanks Regards, Arpit.
Re: [BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath.
O.K. I've fixed this both on the master as well as the the 2.12.x branch. The question is now IF and HOW FAST the Apache Camel PMC would decide to release 2.12.2. For the time being, as a temporary solution, you could of course patch the POM of this component and build the bundle by yourself. Babak Babak Vahdat wrote Hi Thanks for looking into this and raising the JIRA, yes indeed bunch of the classes of camel-quartz2.jar are missing inside the 2.12.0 / 2.12.1 jars on the central. Babak abaldoni wrote Hello, I'm trying to implement a polling JPA endpoint like this: from(jpa:...?scheduler=quartz2scheduler.cron=0+0+0+0+JAN,APR,JUL,OCT+*+*).marshal().jaxb().to(mock:xml); I've included the camel-quartz2 dependency in my project; however, when I run it, I get the following error: Cannot load org.apache.camel.pollconsumer.quartz2.QuartzScheduledPollConsumerScheduler from classpath. Make sure camel-quarz2.jar is on the classpath. If I browse camel-quartz2.jar there is no pollconsumer package. Is it a bug or should I include another dependency? Regards, Alessandro. * Update: * I've browsed the source code and the QuartzScheduledPollConsumerScheduler is there. Is it a jar packaging problem? * Update 2: * I've opened a bug in the Camel JIRA. (CAMEL-6789) -- View this message in context: http://camel.465427.n5.nabble.com/BUG-Quartz2-Make-sure-camel-quarz2-jar-is-on-the-classpath-tp5740227p5740248.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: [BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath.
Thank you! Alessandro Baldoni Comune di Faenza Servizio Informatica Tel. 0546 691224 Cel. +39 334 6012463 From: Babak Vahdat [via Camel] ml-node+s465427n5740248...@n5.nabble.com To: abaldoni alessandro.bald...@comune.faenza.ra.it Date: 26/09/2013 17:00 Subject:Re: [BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath. O.K. I've fixed this both on the master as well as the the 2.12.x branch. The question is now IF and HOW FAST the Apache Camel PMC would decide to release 2.12.2. For the time being, as a temporary solution, you could of course patch the POM of this component and build the bundle by yourself. Babak Babak Vahdat wrote Hi Thanks for looking into this and raising the JIRA, yes indeed bunch of the classes of camel-quartz2.jar are missing inside the 2.12.0 / 2.12.1 jars on the central. Babak abaldoni wrote Hello, I'm trying to implement a polling JPA endpoint like this: from(jpa:...?scheduler=quartz2scheduler.cron=0+0+0+0+JAN,APR,JUL,OCT+*+*).marshal().jaxb().to(mock:xml); I've included the camel-quartz2 dependency in my project; however, when I run it, I get the following error: Cannot load org.apache.camel.pollconsumer.quartz2.QuartzScheduledPollConsumerScheduler from classpath. Make sure camel-quarz2.jar is on the classpath. If I browse camel-quartz2.jar there is no pollconsumer package. Is it a bug or should I include another dependency? Regards, Alessandro. Update: I've browsed the source code and the QuartzScheduledPollConsumerScheduler is there. Is it a jar packaging problem? Update 2: I've opened a bug in the Camel JIRA. (CAMEL-6789) If you reply to this email, your message will be added to the discussion below: http://camel.465427.n5.nabble.com/BUG-Quartz2-Make-sure-camel-quarz2-jar-is-on-the-classpath-tp5740227p5740248.html To unsubscribe from [BUG?] Quartz2 - Make sure camel-quarz2.jar is on the classpath., click here. NAML -- View this message in context: http://camel.465427.n5.nabble.com/BUG-Quartz2-Make-sure-camel-quarz2-jar-is-on-the-classpath-tp5740227p5740250.html Sent from the Camel - Users mailing list archive at Nabble.com.
Failover JMS and Camel DefaultTimeoutManager failures
Hello all. I am working with a large application written in camel. We have recently started noticing (it may have been occurring for a while) that in some cases a sort of death spiral occurs. Out setup: Camel 2.10.1 (unfortunately we can't upgrade) ActiveMQ 5.6.0 (unfortunately we can't upgrade) As far as I can tell this is what is occurring: · Something puts excess load on the system and slows down our application · Some ReplyManagerTimeoutChecks start failing · It starts doing excessive amounts of work dealing with timeouts which delays the processing of the work causing more timeouts o Using a sampler it appears most the time is spent in DefaultTimeoutMap.purge() § There is a .size() call that is very expensive which is discarded unless trace level logging is turned on (this bug still exists in the current camel code) · The activemq connections start timing out and disconnecting from the broker side · This appears to cause the camel routes to spawn a new set of TimeoutChecker and ReplyManager threads for each of the routes which are all Has anyone seen issue like this? Any advice on what else I should be looking for? Thanks Sam Hendley
Re: Is it possible to retrieve a stream for a Exchange Body?
Well, what exception are you getting? Or is it not throwing an exception? Camel uses type converters [1] to do that kind of conversion. Depending on the body type currently, you may have to write your own converter. [1]... http://camel.apache.org/type-converter.html On Thu, Sep 26, 2013 at 5:02 AM, niels_s steni...@gmail.com wrote: Hey there, I'm experimenting and creating my own component to use Apache Tika. Now I was wondering if it's possible to retrieve a stream for a Exchange Body? I'm trying like this right now but doesn't seem to do the job: InputStream is = exchange.getIn().getBody(java.io.InputStream.class); I'm using Camel's DefaultComponent and DefaultProducer. Maybe I should be using the StreamProducer? Can anybody get me on the right direction? Thanks , Niels -- View this message in context: http://camel.465427.n5.nabble.com/Is-it-possible-to-retrieve-a-stream-for-a-Exchange-Body-tp5740229.html Sent from the Camel - Users mailing list archive at Nabble.com. -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
Re: Failover JMS and Camel DefaultTimeoutManager failures
Post your route, your configs, and a description of what it does, who are its clients, etc. Also link to the bug in the current code. On Thu, Sep 26, 2013 at 8:02 AM, Hendley, Sam sam.hend...@sensus.comwrote: Hello all. I am working with a large application written in camel. We have recently started noticing (it may have been occurring for a while) that in some cases a sort of death spiral occurs. Out setup: Camel 2.10.1 (unfortunately we can't upgrade) ActiveMQ 5.6.0 (unfortunately we can't upgrade) As far as I can tell this is what is occurring: · Something puts excess load on the system and slows down our application · Some ReplyManagerTimeoutChecks start failing · It starts doing excessive amounts of work dealing with timeouts which delays the processing of the work causing more timeouts o Using a sampler it appears most the time is spent in DefaultTimeoutMap.purge() § There is a .size() call that is very expensive which is discarded unless trace level logging is turned on (this bug still exists in the current camel code) · The activemq connections start timing out and disconnecting from the broker side · This appears to cause the camel routes to spawn a new set of TimeoutChecker and ReplyManager threads for each of the routes which are all Has anyone seen issue like this? Any advice on what else I should be looking for? Thanks Sam Hendley -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta
Camel multicast and exception
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
Re: Camel multicast and exception
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
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
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
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
Re: Consuming multiple JMS messages in one single transaction
What about using the sjms component instead of the jms component. The documentation says it supports Transacted Batch Consumers Producers. I haven't used this feature myself but I have just started to use the sjms component since I prefer not using Spring. /Bengt 2013/9/24 bacar ba...@acar.org.uk Hi, I need to do something very similar to this request from April 2012, ie consume multiple JMS messages in a single transaction. Is the advice still current? Does the same also apply for the opposite, ie consuming a single message in a transaction, and then writing multiple output messages in one transaction? I guess it would be possible to write our own JmsComponent alternative that supports such functionality and allows us to continue using camel, but I imagine that without dedicated support from Spring, it might be quite a lot of effort. -- View this message in context: http://camel.465427.n5.nabble.com/Consuming-multiple-JMS-messages-in-one-single-transaction-tp5640489p5740169.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: CAmel : Using Springg DSL to fetch atom feeds. But not working
java.lang.NoSuchMethodError means you do not use the right Axiom version. Best, Christian - Software Integration Specialist Apache Camel committer: https://camel.apache.org/team V.P. Apache Camel: https://www.apache.org/foundation/ Apache Member: https://www.apache.org/foundation/members.html https://www.linkedin.com/pub/christian-mueller/11/551/642 On Thu, Sep 26, 2013 at 3:33 PM, Ankur ankur.b.aggar...@accenture.comwrote: Its a maven project and i am using 2.12.1 (camel) and 3.2.4 (spring) version. There are no dependency clashes on classpath. -- View this message in context: http://camel.465427.n5.nabble.com/CAmel-Using-Springg-DSL-to-fetch-atom-feeds-But-not-working-tp5740228p5740239.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Unreleased thread, possible in SMPP component
This project moved to GitHub [1]. You can have a look whether this issue is already solved or not. But because there is no newer version available than Camel is using, this issue is not fixed yet in Camel... [1] https://github.com/uudashr/jsmpp Best, Christian - Software Integration Specialist Apache Camel committer: https://camel.apache.org/team V.P. Apache Camel: https://www.apache.org/foundation/ Apache Member: https://www.apache.org/foundation/members.html https://www.linkedin.com/pub/christian-mueller/11/551/642 On Mon, Sep 23, 2013 at 11:13 AM, mamouros csst0...@yahoo.gr wrote: I wonder if this problem was ever solved and how because it seams I am facing it too. -- View this message in context: http://camel.465427.n5.nabble.com/Unreleased-thread-possible-in-SMPP-component-tp4922901p5740052.html Sent from the Camel - Users mailing list archive at Nabble.com.