Re: StreamCaching in Camel 1.6
Hi Just wanted to note that the bug is now fixed in the next release of Camel - 1.6.1 and 2.0 Thanks for reporting. On Tue, Mar 17, 2009 at 9:28 AM, Claus Ibsen claus.ib...@gmail.com wrote: Hi A quick test shows: JMX disabled: EventDrivenConsumerRoute[Endpoint[direct:start] - UnitOfWork(StreamCachingInterceptor(choice{when body contains Hello: Pipeline[DeadLetterChannel[sendTo(Endpoint[mock:hello]), log:org.apache.camel.DeadLetterChannel?level=error], DeadLetterChannel[StreamCachingInterceptor(choice{when body contains Bye: DeadLetterChannel[StreamCachingInterceptor(sendTo(Endpoint[mock:bye])), log:org.apache.camel.DeadLetterChannel?level=error]}), log:org.apache.camel.DeadLetterChannel?level=error]]}))] JMX enabled: EventDrivenConsumerRoute[Endpoint[direct:start] - UnitOfWork(Instrumentation(Instrumentation(choice{when body contains Hello: Pipeline[sendTo(Endpoint[mock:hello]), choice{when body contains Bye: sendTo(Endpoint[mock:bye])}]})))] So yeah there is a bug in Camel that is affected by the JMX. I will log a JIRA for this. https://issues.apache.org/activemq/browse/CAMEL-1463 On Tue, Mar 17, 2009 at 9:15 AM, Claus Ibsen claus.ib...@gmail.com wrote: On Fri, Mar 6, 2009 at 1:46 PM, _Jens jens.riemschnei...@icw.de wrote: Hi, first of all, thanks to both of you, Gert and Willem, for the quick replies. I saw that the jira was already fixed, great job. Does this mean that the methods for disabling stream caching will be removed in the future? I have tried to use noErrorHandler but there was a special case that used the default error handler at some point and I wasn't able to change this. A drilled down version of my scenario is shown in the test case below. It has to do with the choice and when elements in the route. They seem to introduce the standard error handler, as they don't inherit the configured one. The standard error handling then configures the route to use stream caching again. For some reason this only seems to happen if the JMX agent is disabled in the CamelContext, which I simulate by setting the system property. Of course, in our real scenario we simply disable it in the application context. So you are saying that with/without JMX it has an influence on your route? That is kinda odd, but there could be a gremlin. Need to check into this. �...@test public void testUploadFailsForBigFileWithNoErrorHandler() throws Exception { System.setProperty(JmxSystemPropertyKeys.DISABLED, true); DefaultCamelContext context = new DefaultCamelContext(); context.addRoutes(new RouteBuilder() { �...@override public void configure() throws Exception { errorHandler(noErrorHandler()); from(jetty:http://localhost:8989/bigfile;) .choice().when(header(foo).isEqualTo(bar)).to(direct:end) .otherwise().end(); from(direct:end) .process(new Processor() { public void process(Exchange exchange) throws Exception { InputStream inputStream = exchange.getIn().getBody(InputStream.class); while (inputStream.read() != -1) {} } }); } }); context.start(); HttpClient client = new HttpClient(); PostMethod method = new PostMethod(http://localhost:8989/bigfile;); File file = new File(c:\\temp\\test.bin.ok2); method.setRequestEntity(new FileRequestEntity(file, unknown/unknown)); assertEquals(200, client.executeMethod(method)); } -- View this message in context: http://www.nabble.com/StreamCaching-in-Camel-1.6-tp22305654p22371815.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com. -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/
Re: Mutual SSL authentication with Camel applications
On Tue, Mar 17, 2009 at 1:56 PM, huntc hu...@mac.com wrote: Here's the promised blog entry: http://christopherhunt-software.blogspot.com/2009/03/mutual-ssl-authentication-and-ldap.html Hi Thanks a lot for sharing this with us. Its been noticed by the AMQ committers. -- View this message in context: http://www.nabble.com/Mutual-SSL-authentication-with-Camel-applications-tp22490614p22558460.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com. -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/
Re: Starting, stopping and removing routes at runtime
- can I get a single RouteDefinition, or only a list that I must iterate to find the one I am looking for? The API is what we got. But we are open for API changes in Camel 2.0 so if you have suggestions what you would like changed/added that feedback is much appreciated. I think a pre check if a route with a certain ID already exists would be helpful. I would also like to do more things based on the routeID, instead of getting the list with the RouteDefinitions and then searching for the one I want to manipulate. I am thinking about methods like - RouteDefinition getRouteDefinition(String id) - void startRoute(String id) - void stopRoute(String id) - boolean routeExists(String id) On the other hand I am not sure if this is really feasible as the route ID is an optional attribute. And as these route manipulations at runtime do not occur that often, the current API and some additional code in the application is probably sufficient in most cases. M.S. -- View this message in context: http://www.nabble.com/Starting%2C-stopping-and-removing-routes-at-runtime-tp22370230p22578949.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.
Re: StreamCaching in Camel 1.6
Wow nice job! I'll make sure that I try 1.6.1 soon. Thanks a lot Claus. -- View this message in context: http://www.nabble.com/StreamCaching-in-Camel-1.6-tp22305654p22581500.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.
Camel 2.0 -M1 Mail - Sending HTML Email
Hi, I am using camel 2.0 M1 release. Does the mail component allow HTML email to be sent? Thanks -- View this message in context: http://www.nabble.com/Camel-2.0--M1-Mail---Sending-HTML-Email-tp22584188p22584188.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.
Re: Camel JMS Component (ActiveMQ) Repeatedly Reconnects
I made the change you suggested. However, I am getting the same error. :-( Do you have any other suggestions? Claus Ibsen-2 wrote: Hi You should use the ActiveMQ component instead of the generic JmsComponent. Its optimized for AMQ. http://camel.apache.org/activemq.html On Mon, Mar 16, 2009 at 9:37 PM, greenbean kevin.urci...@ngc.com wrote: Apache Camel 2.0 Snapshot Apache ActiveMQ 5.2 When I started Apache Camel I see repeated connect/disconnect events in activemq. Is there something I have done incorrectly to have activemq do this? I use ActiveMQ other places (outside of camel) and everything works fine. Below is the XML configuration and the DEBUG log information from ActiveMQ. - camel:camelContext id=camel camel:route camel:from uri=activemq:queue:testa / camel:policy ref=PROPAGATION_REQUIRED / camel:process ref=myProcessor / camel:to uri=activemq:queue:testb / /camel:route /camel:camelContext bean id=myProcessor class=com.ngc.ident1.example.camel.CamelProcessor /bean bean id=activemq class=org.apache.camel.component.jms.JmsComponent property name=connectionFactory bean class=org.apache.activemq.ActiveMQXAConnectionFactory property name=brokerURL value${local.broker.url}/value /property /bean /property property name=cacheLevelName value=CACHE_NONE / property name=transacted value=true / property name=transactionManager ref=transactionManager / /bean bean id=PROPAGATION_REQUIRED class=org.apache.camel.spring.spi.SpringTransactionPolicy constructor-arg bean class=org.springframework.transaction.support.TransactionTemplate property name=transactionManager ref=transactionManager / /bean /constructor-arg /bean - 2009-03-16 20:34:08,482 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Task) Sending: WireFormatInfo { version=3, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=1, TcpNoDelayEnabled=true, MaxInactivityDuration=3, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} 2009-03-16 20:34:08,485 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport Initiator: /127.0.0.1:59998) Sending: WireFormatInfo { version=3, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=1, TcpNoDelayEnabled=true, MaxInactivityDuration=3, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} 2009-03-16 20:34:08,485 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport: tcp:///127.0.0.1:59998) Received WireFormat: WireFormatInfo { version=3, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=1, TcpNoDelayEnabled=true, MaxInactivityDuration=3, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} 2009-03-16 20:34:08,485 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport: tcp:///127.0.0.1:59998) tcp:///127.0.0.1:59998 before negotiation: OpenWireFormat{version=3, cacheEnabled=false, stackTraceEnabled=false, tightEncodingEnabled=false, sizePrefixDisabled=false} 2009-03-16 20:34:08,485 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport: tcp:///127.0.0.1:59998) tcp:///127.0.0.1:59998 after negotiation: OpenWireFormat{version=3, cacheEnabled=true, stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false} 2009-03-16 20:34:08,486 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) Received WireFormat: WireFormatInfo { version=3, properties={CacheSize=1024, CacheEnabled=true, SizePrefixDisabled=false, MaxInactivityDurationInitalDelay=1, TcpNoDelayEnabled=true, MaxInactivityDuration=3, TightEncodingEnabled=true, StackTraceEnabled=true}, magic=[A,c,t,i,v,e,M,Q]} 2009-03-16 20:34:08,486 DEBUG [org.apache.activemq.transport.WireFormatNegotiator] (ActiveMQ Transport: tcp://localhost/127.0.0.1:61616) tcp://localhost/127.0.0.1:61616 before negotiation: OpenWireFormat{version=3, cacheEnabled=false, stackTraceEnabled=false, tightEncodingEnabled=false, sizePrefixDisabled=false} 2009-03-16 20:34:08,486 DEBUG
Re: Wsdl file not find by cxf or camel-cxf endpoint in OSGI server ?
Ah, another OSGi issue. Charles, you are exploring a new world with CXF and Camel. Please feel free to fill a JIRA when you get into trouble. Maybe we could use the OSGi resolver to look up the wsdl file. Since we just pass the wsdl location as a String into CXF in the camel-cxf component, we may need do some work on CXF side. Willem cmoulliard wrote: Hi, I have created two bundles : - one for the files generated by wsdl2java of CXF = bundle reportingincident.service (= bundle A) - and the other for my camel-context using these files = bundle reportingincident.camel (= bundle B) In the bundle A, I have created a directory under META-INF called wsdl where my reporting_incident.wsdl file is and exported the package (in this case, the wsdl file) using the syntax : Export-PackageMETA-INF.wsdl/Export-Package The bundle B imports the package META-INF.wsdl using the following syntax Import-PackageMETA-INF.wsdl/Import-Package Unfortunately, when Camel-cxf endpoint and CXF are created and started during the load of the camel-context, Cxf claims that it does not find the file under c:///apache-servicemix-kernet-1.1.0-SNAPSHOT/bin/reporting_incident.wsdl According to the documentation of camel-cxf endpoint, the wsdl file defined for the parameter wsdlUrl is loaded through the classpath. This is not the case here, why ? Regards, - Charles Moulliard SOA Architect My Blog : http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
Re: Wsdl file not find by cxf or camel-cxf endpoint in OSGI server ?
On Thu, Mar 19, 2009 at 1:35 AM, Willem Jiang willem.ji...@gmail.com wrote: Ah, another OSGi issue. Charles, you are exploring a new world with CXF and Camel. Please feel free to fill a JIRA when you get into trouble. Maybe we could use the OSGi resolver to look up the wsdl file. Since we just pass the wsdl location as a String into CXF in the camel-cxf component, we may need do some work on CXF side. Yeah in Camel 2.0 there is API on CamelContext to get a ClassResolver that can be injected with a OSGi aware. Please use this API to get hold of resolvers as it should then be the same API used by components. But the impl behind them can be OSGi specific, JBoss specifc, WebSphere specifc and the default ones, etc. Willem cmoulliard wrote: Hi, I have created two bundles : - one for the files generated by wsdl2java of CXF = bundle reportingincident.service (= bundle A) - and the other for my camel-context using these files = bundle reportingincident.camel (= bundle B) In the bundle A, I have created a directory under META-INF called wsdl where my reporting_incident.wsdl file is and exported the package (in this case, the wsdl file) using the syntax : Export-PackageMETA-INF.wsdl/Export-Package The bundle B imports the package META-INF.wsdl using the following syntax Import-PackageMETA-INF.wsdl/Import-Package Unfortunately, when Camel-cxf endpoint and CXF are created and started during the load of the camel-context, Cxf claims that it does not find the file under c:///apache-servicemix-kernet-1.1.0-SNAPSHOT/bin/reporting_incident.wsdl According to the documentation of camel-cxf endpoint, the wsdl file defined for the parameter wsdlUrl is loaded through the classpath. This is not the case here, why ? Regards, - Charles Moulliard SOA Architect My Blog : http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/ -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/