380.3. unmarshal
이 예제에서는 MY_QUEUE라는 ActiveMQ 큐에서 Zip 파일 페이로드를 원래 형식으로 변환 해제하고 이를 UnZippedMessageProcessor
로 전달합니다.
from("activemq:queue:MY_QUEUE") .unmarshal().zipFile() .process(new UnZippedMessageProcessor());
from("activemq:queue:MY_QUEUE")
.unmarshal().zipFile()
.process(new UnZippedMessageProcessor());
zip 파일에 하나 이상의 항목이 있는 경우 ZipFileDataFormat의 usingIterator 옵션이 true로, splitter를 사용하여 추가 작업을 수행할 수 있습니다.If the zip file has more then one entry, the usingIterator option of ZipFileDataFormat to be true, and you can use splitter to do the further work.
또는 ZipSplitter를 다음과 같이 직접 분할하는 표현식으로 사용할 수 있습니다.
from("file:src/test/resources/org/apache/camel/dataformat/zipfile?consumer.delay=1000&noop=true") .split(new ZipSplitter()).streaming() .process(new UnZippedMessageProcessor()) .end();
from("file:src/test/resources/org/apache/camel/dataformat/zipfile?consumer.delay=1000&noop=true")
.split(new ZipSplitter()).streaming()
.process(new UnZippedMessageProcessor())
.end();