Re: Retrieve failed Route from deadLetterChannel ?
Hi Claus, I didn't found any information about 2.10.4 release date? Is there any date planned? Best regards, Nicolas 2013/1/12 Nicolas Colomer ncolo...@octo.com Hi Claus, Thank you for your answer and the quick fix! This is exactly what I needed :) Best regards, Nicolas 2013/1/12 Claus Ibsen-2 [via Camel] ml-node+s465427n5725448...@n5.nabble.com Hi I have logged a ticket to let the route id be accessible for end users https://issues.apache.org/jira/browse/CAMEL-5959 On Fri, Jan 11, 2013 at 7:44 PM, ncolomer [hidden email]http://user/SendEmail.jtp?type=nodenode=5725448i=0 wrote: Hi Camel community, I am facing a problem using the Camel's deadLetterChannel. I have several Routes that process messages and delegate to a Route-scoped errorHandler when something bad happen (HTTP endpoint timeout for instance). What I try to achieve is to implement a generic Route as deadLetterChannel to handle all kind of Route failure and act accordingly (actually, persist object on the filesystem and send an email). The problem is that filename and mail subject are different, depending on the Route the failure was triggered from. I need to implement some logic to retrieve the failure context (i.e. from which Route it was triggered) and set some headers accordingly. Is there a possibility to retrieve failed Route (instance / ID or URI) via the Exchange object (Processor) ? If it's not the case, can we set headers in the Route specific errorHandler that will be used in the generic deadLetterChannel (worse as Route depends on caller) ? Do you see a better way ? My Java code currently looks like that : MyRoute route definition : from(MyRoute.URI).routeId(MyRoute.ID) .errorHandler(deadLetterChannel(DeadLetterRoute.URI).useOriginalMessage() .maximumRedeliveries(maximumRedeliveries).redeliveryDelay(redeliveryDelay) .log(MyRoute.FAILURE).logHandled(true) .retriesExhaustedLogLevel(LoggingLevel.ERROR).logStackTrace(true) .retryAttemptedLogLevel(LoggingLevel.WARN).logRetryStackTrace(false)) // ... Route's stuff ... DeadLetterRoute route definition : from(DeadLetterRoute.URI).routeId(DeadLetterRoute.ID) .process(new DeadLetterProcessor()) // Retrieves failed route and set headers accordingly .setHeader(from, simple(${properties:mail.from})) .setHeader(to, simple(${properties:mail.to})) .to(file:{{error.directory}}) .to(smtp:{{mail.server.url}}); Thanks in advance for your help, Nicolas -- View this message in context: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420.html Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: [hidden email]http://user/SendEmail.jtp?type=nodenode=5725448i=1 Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen -- If you reply to this email, your message will be added to the discussion below: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420p5725448.html To unsubscribe from Retrieve failed Route from deadLetterChannel ?, click herehttp://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_codenode=5725420code=bmNvbG9tZXJAb2N0by5jb218NTcyNTQyMHw5MDU2MzAzMjc= . NAMLhttp://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewerid=instant_html%21nabble%3Aemail.namlbase=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespacebreadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml -- View this message in context: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420p5725533.html Sent from the Camel - Users mailing list archive at Nabble.com.
ProducerTemplate Query
Hi Assume I use the producerTemplate to send an exchange to an endpoint(seda). Sending messages to this endpoint triggers a camel route which sends a message to a web service, e.g. Client code: Exchange response = producerTemplate.send(seda:testSeda ExchangePattern.InOut, MyProcessor()) Route: from(seda:testSeda).to(cxf:serviceDetails); Now the producer is sending an exchange with a MEP of InOut. However, when the route gets fired the SEDA consumer creates an Exchange with a MEP of InOnly. Hence, it is unclear to me as to whether the result from the call to the Web service will get returned to the client. From the diagram on this page I am thinking the response from the web service will not get returned: http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html Thanks -- View this message in context: http://camel.465427.n5.nabble.com/ProducerTemplate-Query-tp5725534.html Sent from the Camel - Users mailing list archive at Nabble.com.
IMAP: No content
Hello, I have problem with fetching from mailbox using IMAP. According the debug the message body is fetched, but I get IOException with message No content. It works fine using POP3 (which we can't use in production). I'm not sure if the problem is in used IMAP implementation (default from Oracle JRE 1.6) or in Camel. Anyone seen this before? Ales P.S.: I have replaced password in the following trace 13:22:05.864 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] DEBUG o.a.c.component.mail.MailConsumer - Connecting to MailStore: imap://imap.seznam.cz:143, folder=INBOX DEBUG: getProvider() returning javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc] DEBUG: mail.imap.fetchsize: 16384 DEBUG: mail.imap.statuscachetimeout: 1000 DEBUG: mail.imap.appendbuffersize: -1 DEBUG: mail.imap.minidletime: 10 DEBUG: trying to connect to host imap.seznam.cz, port 143, isSSL false * OK Seznam IMAP server ready A0 CAPABILITY * CAPABILITY IMAP4rev1 STARTTLS CHILDREN A0 OK CAPABILITY completed DEBUG: protocolConnect login, host=imap.seznam.cz, user=assign-manager, password=non-null A1 LOGIN assign-manager X A1 OK LOGIN Authentication succeeded A2 CAPABILITY * CAPABILITY IMAP4rev1 STARTTLS CHILDREN A2 OK CAPABILITY completed 13:22:06.390 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] DEBUG o.a.c.component.mail.MailConsumer - Getting folder INBOX A3 LIST INBOX * LIST (\HasNoChildren) / INBOX A3 OK LIST completed 13:22:06.638 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] DEBUG o.a.c.component.mail.MailConsumer - Polling mailbox folder: imap://imap.seznam.cz:143, folder=INBOX DEBUG: connection available -- size: 1 A4 SELECT INBOX * 2 EXISTS * 0 RECENT * FLAGS (\Seen \Answered \Flagged \Deleted \Draft \Recent) * OK [PERMANENTFLAGS (\Seen \Answered \Flagged \Deleted \Draft)] Can bee changed permanently * OK [UIDVALIDITY 1] UIDs validity number * OK [UIDNEXT 7] Predicted next UID * OK [UNSEEN 2] The first unseen message MSN. A4 OK [READ-WRITE] SELECT completed A5 SEARCH UNSEEN ALL * SEARCH 2 A5 OK SEARCH completed 13:22:07.147 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] DEBUG o.a.c.component.mail.MailConsumer - Fetching 1 messages. Total 1 messages. A6 FETCH 2 (FLAGS) * 2 FETCH (FLAGS ()) A6 OK FETCH completed A7 FETCH 2 (ENVELOPE INTERNALDATE RFC822.SIZE) * 2 FETCH (ENVELOPE (Fri, 11 Jan 2013 16:05:41 + (GMT) TEST ((DOLECEK Ales NIL Ales.Dolecek nextiraone.eu)) ((DOLECEK Ales NIL Ales.Dolecek nextiraone.eu)) ((DOLECEK Ales NIL Ales.Dolecek nextiraone.eu)) ((assign-mana...@seznam.cz NIL assign-manager seznam.cz)) NIL NIL NIL 995ef58d093f4847a6035da98d9a7f6e3469de9...@ucmai003.uc.nextiraone-eu.ned) INTERNALDATE 11-Jan-2013 16:05:44 + RFC822.SIZE 1657) A7 OK FETCH completed 13:22:07.593 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] DEBUG o.a.c.component.mail.MailConsumer - Processing message: messageNumber=[2], from=[DOLECEK Ales ales.dole...@nextiraone.eu], to=[assign-mana...@seznam.cz assign-mana...@seznam.cz], subject=[TEST], sentDate=[11.1.2013 17:05:41], receivedDate=[11.1.2013 17:05:44] A8 FETCH 2 (BODYSTRUCTURE) * 2 FETCH (BODYSTRUCTURE (text plain (charset us-ascii) NIL NIL NIL 46 1 NIL NIL NIL)) A8 OK FETCH completed A9 FETCH 2 (BODY[TEXT]0.46) (\Seen)* 2 FETCH (BODY[TEXT]0 {46} key1=value1 key2 = value2 === key3=value2 ) A9 OK FETCH completed DEBUG IMAP: IMAPProtocol noop A10 NOOP A10 OK Let's nop! 13:22:08.181 [Camel (camel) thread #0 - imap://assign-mana...@imap.seznam.cz] ERROR o.a.c.component.mail.MailConsumer - Caused by: [org.apache.camel.RuntimeCamelException - Failed to extract body due to: No content. Exchange: Exchange[MailMessage: messageNumber=[2], from=[DOLECEK Ales ales.dole...@nextiraone.eu], to=[assign-mana...@seznam.cz assign-mana...@seznam.cz], subject=[TEST], sentDate=[11.1.2013 17:05:41], receivedDate=[11.1.2013 17:05:44]]. Message: com.sun.mail.imap.IMAPMessage@5f95ff24] org.apache.camel.RuntimeCamelException: Failed to extract body due to: No content. Exchange: Exchange[MailMessage: messageNumber=[2], from=[DOLECEK Ales ales.dole...@nextiraone.eu], to=[assign-mana...@seznam.cz assign-mana...@seznam.cz], subject=[TEST], sentDate=[11.1.2013 17:05:41], receivedDate=[11.1.2013 17:05:44]]. Message: com.sun.mail.imap.IMAPMessage@5f95ff24 at org.apache.camel.component.mail.MailBinding.extractBodyFromMail(MailBinding.java:255) ~[camel-mail-2.8.2.jar:2.8.2] at org.apache.camel.component.mail.MailMessage.createBody(MailMessage.java:92) ~[camel-mail-2.8.2.jar:2.8.2] at org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:41) ~[camel-core-2.8.2.jar:2.8.2] at org.apache.camel.impl.MessageSupport.copyFrom(MessageSupport.java:136) ~[camel-core-2.8.2.jar:2.8.2] at org.apache.camel.impl.DefaultMessage.copyFrom(DefaultMessage.java:52) ~[camel-core-2.8.2.jar:2.8.2]
Starting a camel project
Hi, what is the correct way to run a camel project which was generated by the camel-java archtype in productive. In general I always deploy camel bundles to smx. But this time I want a standalone application without smx. Using java -jar xxx.jar I get an error that there is no main-class defined in the jar. best regards, Marco
Re: How to build an outgoing tcp connection gateway that consumes messages?
Hi Andrea, you haven't understood me. Using MINA uri in from() endpoint causes creation of TCP socket server. But I need to work as tcp client in order to consume messages. This is not standard use case, but some applications uses such mode. Please look at first post and response from Claus Ibsen-2, who explains that both MINA and NETTY don't have such functionality. Best regards, Grzegorz -- View this message in context: http://camel.465427.n5.nabble.com/How-to-build-an-outgoing-tcp-connection-gateway-that-consumes-messages-tp5724102p5725537.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: How to build an outgoing tcp connection gateway that consumes messages?
Sorry I missed the Claus Ibsen's post completely. On Mon, Jan 14, 2013 at 2:12 PM, ggalka grzesiek.ga...@gmail.com wrote: Hi Andrea, you haven't understood me. Using MINA uri in from() endpoint causes creation of TCP socket server. But I need to work as tcp client in order to consume messages. This is not standard use case, but some applications uses such mode. Please look at first post and response from Claus Ibsen-2, who explains that both MINA and NETTY don't have such functionality. Best regards, Grzegorz -- View this message in context: http://camel.465427.n5.nabble.com/How-to-build-an-outgoing-tcp-connection-gateway-that-consumes-messages-tp5724102p5725537.html Sent from the Camel - Users mailing list archive at Nabble.com. -- In a world without walls and fences who needs Windows and Gates?
Re: Starting a camel project
Hi Marco, To run your application as standalone, your application jar has to contain all the dependencies Then you need a class with main method to run your application. Also you need to specify this class in the manifest of the generated jar. One way to do it is by using the maven-assembly-plugin. You can see an example bellow. maven-assembly-plugin is not ideal, but it works for simple application. For more complex application you'd better you maven-shade plugin. Cheers, Bilgin plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-assembly-plugin/artifactId version2.2/version configuration descriptorRefs descriptorRefjar-with-dependencies/descriptorRef /descriptorRefs archive manifest mainClasscom.ofbizian.camelympic.MainApp/mainClass /manifest /archive /configuration executions execution idassembly/id phasepackage/phase goals goalsingle/goal /goals /execution /executions /plugin On 14 January 2013 12:55, Marco Westermann marwesterm...@gmx.de wrote: Hi, what is the correct way to run a camel project which was generated by the camel-java archtype in productive. In general I always deploy camel bundles to smx. But this time I want a standalone application without smx. Using java -jar xxx.jar I get an error that there is no main-class defined in the jar. best regards, Marco
Re: Starting a camel project
Just a quick note, camel will lookup some files in the META-INF/ to pick the components, converters and data formats. If you just build a big jar, you need to merge the META-INF files yourself, otherwise you will hit some strange issue there. -- Willem Jiang Red Hat, Inc. FuseSource is now part of Red Hat Web: http://www.fusesource.com | http://www.redhat.com Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English) http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese) Twitter: willemjiang Weibo: 姜宁willem On Monday, January 14, 2013 at 9:28 PM, Bilgin Ibryam wrote: Hi Marco, To run your application as standalone, your application jar has to contain all the dependencies Then you need a class with main method to run your application. Also you need to specify this class in the manifest of the generated jar. One way to do it is by using the maven-assembly-plugin. You can see an example bellow. maven-assembly-plugin is not ideal, but it works for simple application. For more complex application you'd better you maven-shade plugin. Cheers, Bilgin plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-assembly-plugin/artifactId version2.2/version configuration descriptorRefs descriptorRefjar-with-dependencies/descriptorRef /descriptorRefs archive manifest mainClasscom.ofbizian.camelympic.MainApp/mainClass /manifest /archive /configuration executions execution idassembly/id phasepackage/phase goals goalsingle/goal /goals /execution /executions /plugin On 14 January 2013 12:55, Marco Westermann marwesterm...@gmx.de (mailto:marwesterm...@gmx.de) wrote: Hi, what is the correct way to run a camel project which was generated by the camel-java archtype in productive. In general I always deploy camel bundles to smx. But this time I want a standalone application without smx. Using java -jar xxx.jar I get an error that there is no main-class defined in the jar. best regards, Marco
Re: Starting a camel project
That's correct, and that's exactly the reason I mentioned shade plugin. Thanks Willem B. On 14 January 2013 13:35, Willem jiang willem.ji...@gmail.com wrote: If you just build a big jar, you need to merge the META-INF files yourself, otherwise you will hit some strange issue there.
Route Dependency in XML DSL
Hello Camel Riders, I have a route that I would like to start once another route is finished. I know I could change the jpa component into a custom bean, but I want to do it the camel way J. I would essentially like to start Route B From A. IF they both start at the same time, the world may end J Thanks route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw CREDIT SUISSE Information Technology | Credit eTrading Development, KFVB 525 7033 Louis Stephens Drive | 27560 Research Triangle Park | United States Phone +1 919 994 6412 geoffrey.gers...@credit-suisse.com | www.credit-suisse.com http://www.credit-suisse.com/ === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
Re: Route Dependency in XML DSL
Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey
RE: Route Dependency in XML DSL
Yes, route a to call route b. I don't think it can be using the direct component. I need the from of route b to use the jpa component. route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw Credit eTrading Development +1 919 994 6412 (*102 6412) -Original Message- From: Bilgin Ibryam [mailto:bibr...@gmail.com] Sent: Monday, January 14, 2013 11:17 AM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
RE: Route Dependency in XML DSL
Actually, I should clarify, I don't want route B to start before route A is finished. If Route B starts before Route A exits, Route B will send msgs to quickfix before quickfix is finished logging in. Since Route B has a JPA component as the from endpoint, as soon as its started, it will start creating exchanges. Therefore, I don't think it should start till A finishes. Unless you could use some type of locking Mechanism. -Original Message- From: Gershaw, Geoffrey Sent: Monday, January 14, 2013 12:40 PM To: users@camel.apache.org Subject: RE: Route Dependency in XML DSL Yes, route a to call route b. I don't think it can be using the direct component. I need the from of route b to use the jpa component. route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw Credit eTrading Development +1 919 994 6412 (*102 6412) -Original Message- From: Bilgin Ibryam [mailto:bibr...@gmail.com] Sent: Monday, January 14, 2013 11:17 AM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
Re: Route Dependency in XML DSL
Hi, there is a sample how to stop a route from another one - can also be used for starting. https://camel.apache.org/how-can-i-stop-a-route-from-a-route.html Maruan Sahyoun Am 14.01.2013 um 18:59 schrieb Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com: Actually, I should clarify, I don't want route B to start before route A is finished. If Route B starts before Route A exits, Route B will send msgs to quickfix before quickfix is finished logging in. Since Route B has a JPA component as the from endpoint, as soon as its started, it will start creating exchanges. Therefore, I don't think it should start till A finishes. Unless you could use some type of locking Mechanism. -Original Message- From: Gershaw, Geoffrey Sent: Monday, January 14, 2013 12:40 PM To: users@camel.apache.org Subject: RE: Route Dependency in XML DSL Yes, route a to call route b. I don't think it can be using the direct component. I need the from of route b to use the jpa component. route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw Credit eTrading Development +1 919 994 6412 (*102 6412) -Original Message- From: Bilgin Ibryam [mailto:bibr...@gmail.com] Sent: Monday, January 14, 2013 11:17 AM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
Re: Route Dependency in XML DSL
Hey Gershaw, You have couple options here: 1) use specific route order to keep precedence. Camel starts routes from first to last 2) disable auto startup of routes by using autoStartup=false for route element 3) use initial delay for consumers to hang first poll of the resource - for JPA it will be consumer.initialDelay Cheers, -- Łukasz Dywicki l...@code-house.org Twitter: ldywicki Blog: http://dywicki.pl Code-House - http://code-house.org Wiadomość napisana przez Gershaw, Geoffrey w dniu 14 sty 2013, o godz. 19:55: Thanks for responding. Unfortunately, this doesn't show any XML DSL example. Is it possible in XML? -Original Message- From: Maruan Sahyoun [mailto:sahy...@fileaffairs.de] Sent: Monday, January 14, 2013 1:49 PM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi, there is a sample how to stop a route from another one - can also be used for starting. https://camel.apache.org/how-can-i-stop-a-route-from-a-route.html Maruan Sahyoun Am 14.01.2013 um 18:59 schrieb Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com: Actually, I should clarify, I don't want route B to start before route A is finished. If Route B starts before Route A exits, Route B will send msgs to quickfix before quickfix is finished logging in. Since Route B has a JPA component as the from endpoint, as soon as its started, it will start creating exchanges. Therefore, I don't think it should start till A finishes. Unless you could use some type of locking Mechanism. -Original Message- From: Gershaw, Geoffrey Sent: Monday, January 14, 2013 12:40 PM To: users@camel.apache.org Subject: RE: Route Dependency in XML DSL Yes, route a to call route b. I don't think it can be using the direct component. I need the from of route b to use the jpa component. route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw Credit eTrading Development +1 919 994 6412 (*102 6412) -Original Message- From: Bilgin Ibryam [mailto:bibr...@gmail.com] Sent: Monday, January 14, 2013 11:17 AM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html === === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
Re: Route Dependency in XML DSL
sorry - I missed the XML prerequisite. would it be an option to connect route A to B using a direct endpoint e.g.: route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} =='SessionLogon'/simple /filter to uri=direct-vm:route-b/ /route route id=B from uri=direct-vm:route-b/ to uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{app.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Maruan Sahyoun Am 14.01.2013 um 19:55 schrieb Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com: Thanks for responding. Unfortunately, this doesn't show any XML DSL example. Is it possible in XML? -Original Message- From: Maruan Sahyoun [mailto:sahy...@fileaffairs.de] Sent: Monday, January 14, 2013 1:49 PM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi, there is a sample how to stop a route from another one - can also be used for starting. https://camel.apache.org/how-can-i-stop-a-route-from-a-route.html Maruan Sahyoun Am 14.01.2013 um 18:59 schrieb Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com: Actually, I should clarify, I don't want route B to start before route A is finished. If Route B starts before Route A exits, Route B will send msgs to quickfix before quickfix is finished logging in. Since Route B has a JPA component as the from endpoint, as soon as its started, it will start creating exchanges. Therefore, I don't think it should start till A finishes. Unless you could use some type of locking Mechanism. -Original Message- From: Gershaw, Geoffrey Sent: Monday, January 14, 2013 12:40 PM To: users@camel.apache.org Subject: RE: Route Dependency in XML DSL Yes, route a to call route b. I don't think it can be using the direct component. I need the from of route b to use the jpa component. route id =A from uri=quickfix:config / !-- On login, create MD Request -- filter simple${header.EventCategory} == 'SessionLogon'/simple /filter /route route id=B from uri=jpa://{{app.jpa.cdx.entity}}?consumeDelete=falseconsumer.query={{a pp.sql.included.cds}} / bean ref=SecDefinitionFactory method=create/ bean ref=MarketDataRequestFactory method=create/ to uri=quickfix:config?. / /route Geoffrey A Gershaw Credit eTrading Development +1 919 994 6412 (*102 6412) -Original Message- From: Bilgin Ibryam [mailto:bibr...@gmail.com] Sent: Monday, January 14, 2013 11:17 AM To: users@camel.apache.org Subject: Re: Route Dependency in XML DSL Hi Geoffrey, what do you mean by route is finished ? Do you want to call route B at the end of rotue A? Bilgin On 14 January 2013 14:58, Gershaw, Geoffrey geoffrey.gers...@credit-suisse.com wrote: Geoffrey === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html === === Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===
Re: ProducerTemplate Query
Can you try: Exchange response = producerTemplate.request(seda:testSeda, MyProcessor()) Best, Christian On Mon, Jan 14, 2013 at 12:24 PM, gilboy josephoto...@gmail.com wrote: Hi Assume I use the producerTemplate to send an exchange to an endpoint(seda). Sending messages to this endpoint triggers a camel route which sends a message to a web service, e.g. Client code: Exchange response = producerTemplate.send(seda:testSeda ExchangePattern.InOut, MyProcessor()) Route: from(seda:testSeda).to(cxf:serviceDetails); Now the producer is sending an exchange with a MEP of InOut. However, when the route gets fired the SEDA consumer creates an Exchange with a MEP of InOnly. Hence, it is unclear to me as to whether the result from the call to the Web service will get returned to the client. From the diagram on this page I am thinking the response from the web service will not get returned: http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html Thanks -- View this message in context: http://camel.465427.n5.nabble.com/ProducerTemplate-Query-tp5725534.html Sent from the Camel - Users mailing list archive at Nabble.com. --
Re: Retrieve failed Route from deadLetterChannel ?
I went ahead and added the dates we have in mind to JIRA [1]. The dates are not committed. It's what we plan to achieve... [1] https://issues.apache.org/jira/browse/CAMEL Best, Christian On Mon, Jan 14, 2013 at 10:32 AM, ncolomer ncolo...@octo.com wrote: Hi Claus, I didn't found any information about 2.10.4 release date? Is there any date planned? Best regards, Nicolas 2013/1/12 Nicolas Colomer ncolo...@octo.com Hi Claus, Thank you for your answer and the quick fix! This is exactly what I needed :) Best regards, Nicolas 2013/1/12 Claus Ibsen-2 [via Camel] ml-node+s465427n5725448...@n5.nabble.com Hi I have logged a ticket to let the route id be accessible for end users https://issues.apache.org/jira/browse/CAMEL-5959 On Fri, Jan 11, 2013 at 7:44 PM, ncolomer [hidden email] http://user/SendEmail.jtp?type=nodenode=5725448i=0 wrote: Hi Camel community, I am facing a problem using the Camel's deadLetterChannel. I have several Routes that process messages and delegate to a Route-scoped errorHandler when something bad happen (HTTP endpoint timeout for instance). What I try to achieve is to implement a generic Route as deadLetterChannel to handle all kind of Route failure and act accordingly (actually, persist object on the filesystem and send an email). The problem is that filename and mail subject are different, depending on the Route the failure was triggered from. I need to implement some logic to retrieve the failure context (i.e. from which Route it was triggered) and set some headers accordingly. Is there a possibility to retrieve failed Route (instance / ID or URI) via the Exchange object (Processor) ? If it's not the case, can we set headers in the Route specific errorHandler that will be used in the generic deadLetterChannel (worse as Route depends on caller) ? Do you see a better way ? My Java code currently looks like that : MyRoute route definition : from(MyRoute.URI).routeId(MyRoute.ID) .errorHandler(deadLetterChannel(DeadLetterRoute.URI).useOriginalMessage() .maximumRedeliveries(maximumRedeliveries).redeliveryDelay(redeliveryDelay) .log(MyRoute.FAILURE).logHandled(true) .retriesExhaustedLogLevel(LoggingLevel.ERROR).logStackTrace(true) .retryAttemptedLogLevel(LoggingLevel.WARN).logRetryStackTrace(false)) // ... Route's stuff ... DeadLetterRoute route definition : from(DeadLetterRoute.URI).routeId(DeadLetterRoute.ID) .process(new DeadLetterProcessor()) // Retrieves failed route and set headers accordingly .setHeader(from, simple(${properties:mail.from})) .setHeader(to, simple(${properties:mail.to})) .to(file:{{error.directory}}) .to(smtp:{{mail.server.url}}); Thanks in advance for your help, Nicolas -- View this message in context: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420.html Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: [hidden email] http://user/SendEmail.jtp?type=nodenode=5725448i=1 Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen -- If you reply to this email, your message will be added to the discussion below: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420p5725448.html To unsubscribe from Retrieve failed Route from deadLetterChannel ?, click here http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_codenode=5725420code=bmNvbG9tZXJAb2N0by5jb218NTcyNTQyMHw5MDU2MzAzMjc= . NAML http://camel.465427.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewerid=instant_html%21nabble%3Aemail.namlbase=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespacebreadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml -- View this message in context: http://camel.465427.n5.nabble.com/Retrieve-failed-Route-from-deadLetterChannel-tp5725420p5725533.html Sent from the Camel - Users mailing list archive at Nabble.com. --
Re: Multiple Endpoint URLs defined at one component
Why you didn't try it out? It's so simple: import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.test.junit4.CamelTestSupport; import org.junit.Test; public class CamelMultipleEndpointsTest extends CamelTestSupport { @Test public void test() throws Exception { MockEndpoint mock = getMockEndpoint(mock:end); mock.expectedBodiesReceived(a, b, c, d); context.addRoutes(new RouteBuilder() { public void configure() { from(direct:a, direct:b, direct:c, direct:d) .to(mock:end); } }); template.sendBody(direct:a, a); template.sendBody(direct:b, b); template.sendBody(direct:c, c); template.sendBody(direct:d, d); mock.assertIsSatisfied(); } } And yes, it's possible (with a slightly different syntax). Best, Christian On Mon, Jan 14, 2013 at 9:59 AM, liugang clevers...@gmail.com wrote: Hi All: I'd like to know it's there any Camel component which support to define multiple consumer(provider?) endpoint urls in it? For example: from(XXX:direct:a, direct:b, direct:c,jms:queue:a,...).to(...); in this case, the from can handle the massage no matter it sends to direct:a, direct:b, direct:c or jms:queue:a. Thanks GangLiu --
RE: Multiple Endpoint URLs defined at one component
Hi Christian: I'm not sure it's the same meaning: one is a single string; one is multiple strings. But anyway, thanks for your response. Thanks. GangLiu -Original Message- From: Christian Müller [mailto:christian.muel...@gmail.com] Sent: Tuesday, January 15, 2013 6:13 AM To: users@camel.apache.org Subject: Re: Multiple Endpoint URLs defined at one component Why you didn't try it out? It's so simple: import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.test.junit4.CamelTestSupport; import org.junit.Test; public class CamelMultipleEndpointsTest extends CamelTestSupport { @Test public void test() throws Exception { MockEndpoint mock = getMockEndpoint(mock:end); mock.expectedBodiesReceived(a, b, c, d); context.addRoutes(new RouteBuilder() { public void configure() { from(direct:a, direct:b, direct:c, direct:d) .to(mock:end); } }); template.sendBody(direct:a, a); template.sendBody(direct:b, b); template.sendBody(direct:c, c); template.sendBody(direct:d, d); mock.assertIsSatisfied(); } } And yes, it's possible (with a slightly different syntax). Best, Christian On Mon, Jan 14, 2013 at 9:59 AM, liugang clevers...@gmail.com wrote: Hi All: I'd like to know it's there any Camel component which support to define multiple consumer(provider?) endpoint urls in it? For example: from(XXX:direct:a, direct:b, direct:c,jms:queue:a,...).to(...); in this case, the from can handle the massage no matter it sends to direct:a, direct:b, direct:c or jms:queue:a. Thanks GangLiu --
Help on unsubscribing
I have tried to unsuccessfully unsubscribe from Camel mailing list by mailing dev-unsubscr...@camel.apache.orgmailto:dev-unsubscr...@camel.apache.org and corresponding email ids but not getting unsubscribed ? Can some one please enlighten as to how to unsubscribe ? Regards Ram Enterprise Architect , Technology Consulting Group (Manufacturing and Logistics - Centrica) Tel : 9840108852 Vnet : 470839 Cognizant www.cognizant.com This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient(s), please reply to the sender and destroy all copies of the original message. Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of this email, and/or any action taken in reliance on the contents of this e-mail is strictly prohibited and may be unlawful.
Re: NoClassDefFoundError : javax.xml.namespace.QName CXF SOAP Consumer
Not sure if this is still a problem for anyone. However, I solved this by using the following in the pom. DynamicImport-Package javax.xml.namespace, -- View this message in context: http://camel.465427.n5.nabble.com/NoClassDefFoundError-javax-xml-namespace-QName-CXF-SOAP-Consumer-tp4685413p5725546.html Sent from the Camel - Users mailing list archive at Nabble.com.
Properties are not resolved inside of choice
Hi, I'm using Camel 2.10.0. In Spring context configuration I have an issue with properties resolution {{...}} when they are inside of choice tag. Resolution of the property throttle.requests.per.second does NOT work for: route from uri=direct:endpointBean/ choice when simple${in.body} 0/simple throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant bean ref=endpointBean/ /throttle /when /choice /route But it DOES work when throttle tag is before the choice: route from uri=direct:endpointBean/ throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant choice when simple${in.body} 0/simple bean ref=endpointBean/ /when /choice /throttle /route Could you please advise whether it is known defect? Thanks. --Victor -- View this message in context: http://camel.465427.n5.nabble.com/Properties-are-not-resolved-inside-of-choice-tp5725523.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Camel Spring XML
Hi Claus, Thanks, I referred to the example stated on the link you have provided. Apologies to ask you a very basic question in this case: choice when headername/header transform simpleHello ${header.name} how are you?/simple /transform /when In above 'choice when' code, how to associate header with key name? As I executed the code provided on the link and it is always executing the 'choice-otherwise' segment. Thanks in advance, Manoj -- View this message in context: http://camel.465427.n5.nabble.com/Camel-Spring-XML-tp5725366p5725561.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Properties are not resolved inside of choice
On Mon, Jan 14, 2013 at 8:11 AM, leroykendall leroykend...@yahoo.com wrote: Hi, I'm using Camel 2.10.0. I think we have fixed this since that release. Try with latest 2.10.x release. Or the SNAPSHOT. In Spring context configuration I have an issue with properties resolution {{...}} when they are inside of choice tag. Resolution of the property throttle.requests.per.second does NOT work for: route from uri=direct:endpointBean/ choice when simple${in.body} 0/simple throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant bean ref=endpointBean/ /throttle /when /choice /route But it DOES work when throttle tag is before the choice: route from uri=direct:endpointBean/ throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant choice when simple${in.body} 0/simple bean ref=endpointBean/ /when /choice /throttle /route Could you please advise whether it is known defect? Thanks. --Victor -- View this message in context: http://camel.465427.n5.nabble.com/Properties-are-not-resolved-inside-of-choice-tp5725523.html Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen
Re: Properties are not resolved inside of choice
On Tue, Jan 15, 2013 at 7:58 AM, Claus Ibsen claus.ib...@gmail.com wrote: On Mon, Jan 14, 2013 at 8:11 AM, leroykendall leroykend...@yahoo.com wrote: Hi, I'm using Camel 2.10.0. I think we have fixed this since that release. Try with latest 2.10.x release. Or the SNAPSHOT. And if you stay on 2.10.0, you can use simple instead and refer to the property placeholder using simple${properties:throttle.requests.per.second}/simple See details at http://camel.apache.org/simple In Spring context configuration I have an issue with properties resolution {{...}} when they are inside of choice tag. Resolution of the property throttle.requests.per.second does NOT work for: route from uri=direct:endpointBean/ choice when simple${in.body} 0/simple throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant bean ref=endpointBean/ /throttle /when /choice /route But it DOES work when throttle tag is before the choice: route from uri=direct:endpointBean/ throttle timePeriodMillis=1000 constant{{throttle.requests.per.second}}/constant choice when simple${in.body} 0/simple bean ref=endpointBean/ /when /choice /throttle /route Could you please advise whether it is known defect? Thanks. --Victor -- View this message in context: http://camel.465427.n5.nabble.com/Properties-are-not-resolved-inside-of-choice-tp5725523.html Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen
Re: Camel Spring XML
On Tue, Jan 15, 2013 at 7:55 AM, Manoj Kolhe harddrive.ma...@gmail.com wrote: Hi Claus, Thanks, I referred to the example stated on the link you have provided. Apologies to ask you a very basic question in this case: choice when headername/header transform simpleHello ${header.name} how are you?/simple /transform /when In above 'choice when' code, how to associate header with key name? headername/header is evaluated as if there is a header with the key name or not, and if there is a header, then its value is != null. As I executed the code provided on the link and it is always executing the 'choice-otherwise' segment. If you run this example http://camel.apache.org/servlet-tomcat-example.html It outputs in the webpage how to provide a name, eg by adding ?name=Claus to the http url in your web browser. Thanks in advance, Manoj -- View this message in context: http://camel.465427.n5.nabble.com/Camel-Spring-XML-tp5725366p5725561.html Sent from the Camel - Users mailing list archive at Nabble.com. -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen
Re: Starting a camel project
Hi See also this FAQ, and the links on that page http://camel.apache.org/running-camel-standalone.html On Mon, Jan 14, 2013 at 1:55 PM, Marco Westermann marwesterm...@gmx.de wrote: Hi, what is the correct way to run a camel project which was generated by the camel-java archtype in productive. In general I always deploy camel bundles to smx. But this time I want a standalone application without smx. Using java -jar xxx.jar I get an error that there is no main-class defined in the jar. best regards, Marco -- Claus Ibsen - Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen
Re: [camel-bindy] bindy ignore bean class type
Hi, if you give me some hint I may start working on it (not sure to have enough skill but I may try). thx -- View this message in context: http://camel.465427.n5.nabble.com/camel-bindy-bindy-ignore-bean-class-type-tp5725275p5725566.html Sent from the Camel - Users mailing list archive at Nabble.com.