以编程方式在mule中设置调用属性

时间:2013-03-19 21:25:08

标签: mule invocation

我正在尝试在Mule 3.3.1中设置一个调用属性,用于“选择”流控制。我的流有一个变换器(扩展AbstractTransformer),在其中我想基于某些逻辑设置一个调用属性。我可以在.mflow文件中设置它:

 <message-properties-transformer scope="invocation" doc:name="Set Invocation Variable">
    <add-message-property key="someKey" value="someValue"/>
 </message-properties-transformer>

但是,我不确定如何在我的变换器中以编程方式执行此操作。 我的最终目标是基于mule消息在soap客户端中动态传递操作字段。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:3)

扩展AbstractMessageTransformer并使用message.setInvocationProperty:

public class MyTransformer extends AbstractMessageTransformer {

    @Override
    public Object transformMessage(MuleMessage message, String outputEncoding) throws TransformerException {
        message.setInvocationProperty("someKey", "someValue");
        return message;
    }

}