如何通过 vm 将一个变压器中的有效载荷检索到另一个变压器
How do I retrieve payload in one transformer to another transformer via vm
我有一个流程,它转换一个有效负载并通过虚拟机将其发送到另一个流程。我希望能够从以前的变压器中检索列表。不幸的是,只有放在它上面的原始消息才会发送到另一个流的入站虚拟机。无论我设置有效载荷还是设置 属性 都没有给我一个列表。如何使用虚拟机将列表获取到第二个变压器?
<flow name="Flow1">
<custom-transformer class="com.nek.transformer.MyXmlToListTransformer">
<set-property propertyName="listProp" value="#[payload]"/>
<set-payload value=#[payload]/>
<vm:outbound path="listHandler">
</flow>
<flow name="Flow1">
<vm:inbound path="listHandler">
<custom-transformer class="com.nek.transformer.MyListToMapTransformer">
</flow>
//This transformer wants the list from the previous transformer
public MyListToMapTransformer extends AbstractTransformer{
public Object doTransform(MuleMessage message, String outputEncoding){
//Neither gives me the list from the previous transformer
Object obj=message.getInboundProperty("listProp");
obj-message.getPayload();
}
}
使用 set-属性 并使用 message.getInboundProperty('myprop')
引用该值
我有一个流程,它转换一个有效负载并通过虚拟机将其发送到另一个流程。我希望能够从以前的变压器中检索列表。不幸的是,只有放在它上面的原始消息才会发送到另一个流的入站虚拟机。无论我设置有效载荷还是设置 属性 都没有给我一个列表。如何使用虚拟机将列表获取到第二个变压器?
<flow name="Flow1">
<custom-transformer class="com.nek.transformer.MyXmlToListTransformer">
<set-property propertyName="listProp" value="#[payload]"/>
<set-payload value=#[payload]/>
<vm:outbound path="listHandler">
</flow>
<flow name="Flow1">
<vm:inbound path="listHandler">
<custom-transformer class="com.nek.transformer.MyListToMapTransformer">
</flow>
//This transformer wants the list from the previous transformer
public MyListToMapTransformer extends AbstractTransformer{
public Object doTransform(MuleMessage message, String outputEncoding){
//Neither gives me the list from the previous transformer
Object obj=message.getInboundProperty("listProp");
obj-message.getPayload();
}
}
使用 set-属性 并使用 message.getInboundProperty('myprop')
引用该值