Hello Fellow Camelriders,
https://camel.apache.org/components/3.20.x/eips/split-eip.html#_streaming_big_xml_payloads_using_xml_tokenize_language

I tried using camel jbang to run XML Split with Streaming.
Here is how my route is defined:
<route>
<from uri="file:///c://work//batchsplit//in"/>
<split streaming="true">
      <xtokenize>//Batch</xtokenize>
      <to uri="file:///c://work//batchsplit//out"/>
    </split>

</route>

Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
org.apache.camel.InvalidPayloadException: No body available of type:
java.io.InputStream but has type:
org.apache.camel.component.file.GenericFile on: Batch.xml. Caused by:
No type converter available to convert from type:
org.apache.camel.component.file.GenericFile to the required type:
java.io.InputStream. Exchange[6D6CB32F70B1126-0000000000000007].
Caused by: [org.apache.camel.NoTypeConversionAvailableException - No
type converter available to convert from type:
org.apache.camel.component.file.GenericFile to the required type:
java.io.InputStream]
        at 
org.apache.camel.support.MessageSupport.getMandatoryBody(MessageSupport.java:125)
~[camel-support-3.19.0.jar:3.19.0]
        at 
org.apache.camel.language.xtokenizer.XMLTokenExpressionIterator.doEvaluate(XMLTokenExpressionIterator.java:151)
~[camel-stax-3.19.0.jar:3.19.0]
        at 
org.apache.camel.language.xtokenizer.XMLTokenExpressionIterator.evaluate(XMLTokenExpressionIterator.java:134)
~[camel-stax-3.19.0.jar:3.19.0]
        at 
org.apache.camel.support.ExpressionAdapter.evaluate(ExpressionAdapter.java:45)
~[camel-support-3.19.0.jar:3.19.0]
        at 
org.apache.camel.processor.Splitter.createProcessorExchangePairs(Splitter.java:143)
~[camel-core-processor-3.19.0.jar:3.19.0]
        at 
org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:295)
~[camel-core-processor-3.19.0.jar:3.19.0]
        at org.apache.camel.processor.Splitter.process(Splitter.java:136)
~[camel-core-processor-3.19.0.jar:3.19.0]
        at 
org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:477)
~[camel-core-processor-3.19.0.jar:3.19.0]
        at 
org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:181)
~[camel-base-engine-3.19.0.jar:3.19.0]
        at 
org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
~[camel-base-engine-3.19.0.jar:3.19.0]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:175)
~[camel-core-processor-3.19.0.jar:3.19.0]
        at 
org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:392)
~[camel-base-engine-3.19.0.jar:3.19.0]
        at 
org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:492)
~[camel-file-3.19.0.jar:3.19.0]
        at 
org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:245)
~[camel-file-3.19.0.jar:3.19.0]
        at 
org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:206)
~[camel-file-3.19.0.jar:3.19.0]
        at 
org.apache.camel.support.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:202)
~[camel-support-3.19.0.jar:3.19.0]
        at 
org.apache.camel.support.ScheduledPollConsumer.run(ScheduledPollConsumer.java:116)
~[camel-support-3.19.0.jar:3.19.0]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
~[?:?]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
~[?:?]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
~[?:?]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
~[?:?]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
~[?:?]
        at java.lang.Thread.run(Thread.java:1589) ~[?:?]
Caused by: org.apache.camel.NoTypeConversionAvailableException: No
type converter available to convert from type:
org.apache.camel.component.file.GenericFile to the required type:
java.io.InputStream
        at 
org.apache.camel.impl.converter.CoreTypeConverterRegistry.mandatoryConvertTo(CoreTypeConverterRegistry.java:274)
~[camel-base-3.19.0.jar:3.19.0]
        at 
org.apache.camel.support.MessageSupport.getMandatoryBody(MessageSupport.java:123)
~[camel-support-3.19.0.jar:3.19.0]
        ... 22 more

I am using camel 3.19.0.

Is there a better way of doing this?

ચિરાગ/चिराग/Chirag
------------------------------------------
Sent from My Gmail Account

Reply via email to