343.4. unmarshal
在本例中,我们从名为 MY_QUEUE 的 ActiveMQ 队列到其原始格式,并将它转发到 UnTarpedMessageProcessor
,将 Tar File payload 转发到其原始格式。
from("activemq:queue:MY_QUEUE").unmarshal().tarFile().process(new UnTarpedMessageProcessor());
from("activemq:queue:MY_QUEUE").unmarshal().tarFile().process(new UnTarpedMessageProcessor());
如果 Tar File 有多个条目,则 TarFileDataFormat 的 useIterator 选项为 true,您可以使用 splitter 来进一步工作。
或者您可以使用 TarSplitter 作为直接分割器的表达式,如下所示
from("file:src/test/resources/org/apache/camel/dataformat/tarfile?consumer.delay=1000&noop=true") .split(new TarSplitter()) .streaming() .process(new UnTarpedMessageProcessor()) .end();
from("file:src/test/resources/org/apache/camel/dataformat/tarfile?consumer.delay=1000&noop=true")
.split(new TarSplitter())
.streaming()
.process(new UnTarpedMessageProcessor())
.end();