【发布时间】:2016-01-12 17:15:58
【问题描述】:
如何将 type=java.lang.String 转换为 type=java.lang.Iterable,因为批处理步骤(流程记录)需要 java.lang.Iterable 类型。注意:输入是一个 xml 文件,而 mule 流是一个批处理作业。
当 xml 只有一个“Report_Entry”记录时,收到以下错误。对于“Report_Entry”流程的多个条目工作正常。
<object-to-string-transformer doc:name="Object to String"/>
<logger message="#[payload]" level="INFO" doc:name="Logger"/>
<set-payload
value="#[xpath3('/*:Report_Data/*:Report_Entry', payload, 'NODESET')]" doc:name="Set Payload"/>
<logger message="XML Record - #[payload]" level="INFO" doc:name="Logger"/>
</batch:input>
<batch:process-records>
<batch:step name="Batch_Step1">
<json:object-to-json-transformer doc:name="Object to JSON"/>
<logger message="XML Record - #[payload]" level="INFO" doc:name="Logger"/>
<amqp:outbound-endpoint exchangeName="${amqp.exchangeName}" queueName="${amqp.queueName}" responseTimeout="10000" encoding="UTF-8" mimeType="application/xml" connector-ref="AMQP_Connector" doc:name="AMQP"/>
</batch:step>
</batch:process-records>
在记录器中,它在设置有效负载条件后打印“org.mule.api.processor.LoggerMessageProcessor: XML Record - net.sf.saxon.dom.DOMNodeList@57d263b4”。我们的要求是将xml记录转换为JSON并写入AMQP。
【问题讨论】:
标签: mule