Hi,

Claus had good tip with reading Stream twice.

I just wanted to ask - does your  public class DetailsInfoProcessorV2 
implements org.apache.camel.Processor ?
If so, it might be better/readable to "call processor" directly, instead of 
bean invocation.
<camel:process ref="dcDetailsInfoProcessorV2"/>

Cheers, Josef


On Thursday 01 of December 2016 20:57:44 Claus Ibsen wrote:
> Hi
> 
> See this FAQ
> http://camel.apache.org/why-is-my-message-body-empty.html
> 
> On Thu, Dec 1, 2016 at 7:37 PM, reddy.janke <reddy.ja...@gmail.com> wrote:
> >
> >                 <camel:route id="searchAirInfoRestRouteV1">
> >                         <camel:from uri="direct:searchAirInfoRoute" />
> >                         <camel:log message="Request has been consumed  
> > ${body}"
> > logName="com.skandha.eim.air" />
> >                         
> > <camel:setBody><camel:simple>${body}</camel:simple></camel:setBody>
> >                         <camel:to 
> > uri="bean:dcDetailsInfoProcessorV2?method=process" />
> >                 </camel:route>
> > I am able to print camel body from camel context. But when I am trying to
> > unmarshal through ref or pass to processor Body convert as null and getting
> > below exception.
> >
> > org.apache.camel.TypeConversionException: Error during type conversion from
> > type: org.apache.camel.converter.stream.InputStreamCache to the required
> > type: com.skandha.eim.air.jaxb.v1.AirLowFareSearchRQ with value
> > org.apache.camel.converter.stream.InputStreamCache@bbf9b0a due null
> >         at
> > org.apache.camel.converter.jaxb.FallbackTypeConverter.convertTo(FallbackTypeConverter.java:103)
> >         at
> > org.apache.camel.impl.converter.BaseTypeConverterRegistry.doConvertTo(BaseTypeConverterRegistry.java:316)
> >         at
> > org.apache.camel.impl.converter.BaseTypeConverterRegistry.convertTo(BaseTypeConverterRegistry.java:114)
> >         at 
> > org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:72)
> >         at 
> > org.apache.camel.impl.MessageSupport.getBody(MessageSupport.java:47)
> >         at
> > com.skandha.eim.air.processor.DcDetailsInfoProcessorV2.process(DcDetailsInfoProcessorV2.java:82)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> >         at java.lang.reflect.Method.invoke(Method.java:498)
> >         at 
> > org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:408)
> >         at
> > org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:279)
> >         at
> > org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:252)
> >         at
> > org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:167)
> >         at
> > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:105)
> >         at
> > org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:67)
> >         at
> > org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:103)
> >         at
> > org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
> >         at
> > org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
> >         at 
> > org.apache.camel.processor.SendProcessor.process(SendProcessor.java:120)
> >         at
> > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
> >         at
> > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:416)
> >         at
> > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
> >         at
> > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
> >         at
> > org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:51)
> >         at 
> > org.apache.camel.processor.SendProcessor.process(SendProcessor.java:120)
> >         at
> > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
> >         at
> > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:416)
> >         at
> > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
> >         at org.apache.camel.processor.Pipeline.process(Pipeline.java:118)
> >         at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
> >         at
> > org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
> >         at
> > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:105)
> >         at
> > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:87)
> >         at
> > org.apache.camel.component.http.CamelServlet.service(CamelServlet.java:144)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> >         at 
> > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> >         at
> > org.apache.camel.component.swagger.RestSwaggerCorsFilter.doFilter(RestSwaggerCorsFilter.scala:44)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
> >         at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> >         at
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)
> >         at
> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
> >         at
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
> >         at
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
> >         at
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
> >         at
> > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:958)
> >         at
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
> >         at
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452)
> >         at
> > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087)
> >         at
> > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
> >         at
> > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
> >         at
> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> >         at
> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> >         at
> > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> >         at java.lang.Thread.run(Thread.java:745)
> > Caused by: javax.xml.bind.UnmarshalException
> >  - with linked exception:
> > [com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
> >  at [row,col {unknown-source}]: [1,0]]
> >         at
> > com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:485)
> >         at
> > com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:417)
> >         at
> > com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:386)
> >         at
> > org.apache.camel.converter.jaxb.FallbackTypeConverter.unmarshal(FallbackTypeConverter.java:276)
> >         at
> > org.apache.camel.converter.jaxb.FallbackTypeConverter.unmarshall(FallbackTypeConverter.java:181)
> >         at
> > org.apache.camel.converter.jaxb.FallbackTypeConverter.convertTo(FallbackTypeConverter.java:95)
> >         ... 58 more
> > Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
> >  at [row,col {unknown-source}]: [1,0]
> >         at 
> > com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:677)
> >         at 
> > com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2137)
> >         at
> > com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2043)
> >         at 
> > com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1133)
> >         at
> > com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:164)
> >         at
> > com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:415)
> >         ... 62 more
> > ]]></data>
> >
> >
> >
> > --
> > View this message in context: 
> > http://camel.465427.n5.nabble.com/Camel-body-is-coming-as-null-to-processor-tp5790902.html
> > Sent from the Camel - Users mailing list archive at Nabble.com.
> 
> 
> 
> 

Reply via email to