What version of Camel do you use

On Tue, Jan 10, 2017 at 11:22 AM, bdeweer <bertrand.dew...@gmail.com> wrote:
> Hello,
>
> Today I encounter a strange situation with my project so could you please
> explain what's the difference between :
>
> <wireTap uri="vm:savePayload" /> (asynchrone to asynchrone component)
>
> and
>
> <to uri="vm:savePayload" /> (synchrone to asynchrone component)
>
> and
>
> <wireTap uri="direct-vm:savePayload" /> (asynchrone to synchrone component)
>
> As the name suggests, I need to save the payload of my route. A dedicated
> bundle has this responsability.
>
> When a route starts with <from uri="direct:ws2jms"> everything is ok with
> any of the three above solution.
>
> But when a route starts with <from uri="vm:jms2ws">
>
> I strangely noticed that after the call to the instruction <to
> uri="vm:savePayload" /> I m not able to retrieve properties from my .cfg
> file with this instruction
>
> exchange.getContext().resolvePropertyPlaceholders("{{http.port}} in a bean
>
> I got an IllegalArgumentException with this stacktrace :
>
> Stacktrace
> ---------------------------------------------------------------------------------------------------------------------------------------
> java.lang.IllegalArgumentException: Property with key [http.port] not found
> in properties from text: {{http.port}}
>         at
> org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.getPropertyValue(DefaultPropertiesParser.java:268)
>         at
> org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.readProperty(DefaultPropertiesParser.java:154)
>         at
> org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.doParse(DefaultPropertiesParser.java:113)
>         at
> org.apache.camel.component.properties.DefaultPropertiesParser$ParsingContext.parse(DefaultPropertiesParser.java:97)
>         at
> org.apache.camel.component.properties.DefaultPropertiesParser.parseUri(DefaultPropertiesParser.java:62)
>         at
> org.apache.camel.component.properties.PropertiesComponent.parseUri(PropertiesComponent.java:209)
>         at
> org.apache.camel.component.properties.PropertiesComponent.parseUri(PropertiesComponent.java:160)
>         at
> org.apache.camel.impl.DefaultCamelContext.resolvePropertyPlaceholders(DefaultCamelContext.java:2348)
>         at
> com.oxit.flow.manager.TraceGeneratorManager.setTrace(TraceGeneratorManager.java:47)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)[:1.8.0_65]
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_65]
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_65]
>         at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_65]
>         at
> org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:458)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:289)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:262)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:178)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:120)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:97)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.OnCompletionProcessor.doProcess(OnCompletionProcessor.java:151)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.OnCompletionProcessor$OnCompletionSynchronizationAfterConsumer.onComplete(OnCompletionProcessor.java:248)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.util.UnitOfWorkHelper.doneSynchronizations(UnitOfWorkHelper.java:104)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.impl.DefaultUnitOfWork.done(DefaultUnitOfWork.java:230)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.util.UnitOfWorkHelper.doneUow(UnitOfWorkHelper.java:65)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor$UnitOfWorkProcessorAdvice.after(CamelInternalProcessor.java:674)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor$UnitOfWorkProcessorAdvice.after(CamelInternalProcessor.java:629)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor$InternalCallback.done(CamelInternalProcessor.java:246)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor$InternalCallback.done(CamelInternalProcessor.java:257)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:573)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:298)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.seda.SedaConsumer.doRun(SedaConsumer.java:207)[175:org.apache.camel.camel-core:2.18.1]
>         at
> org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:154)[175:org.apache.camel.camel-core:2.18.1]
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_65]
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_65]
>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_65]
>
>
> I precise that I don't encounter this situation when my route starts with
> <from uri="direct:ws2jms">
>
>
> So the solution to me is to use the wireTap component. But why the
> IllegalArgumentException when the route starts with a direct component? Is
> it related to the Exception ?
>
> What's the difference between wireTap uri="vm:blabla" /> (double asynchrone)
> and <wireTap uri="direct-vm:blabla"> (simple asynchrone) ?
>
> Thank you!!
>
>
>
> Thank you
>
>
>
>
>
>
>
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/synchrone-and-asynchrone-question-tp5792346.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to