选择异常策略和保留有效负载

时间:2017-04-11 06:11:28

标签: mule mule-component

我希望能够在Mule中使用选择异常策略。但是,我希望能够保留流中的原始有效负载。这样我就可以将有效负载和一些属性传递给另一个流,下面是我尝试这样做的。这是合法的做法吗?该属性是否会被保留,以便我可以从另一端的vm dlq中检索?

      <flow name="myFlow"> 
      <vm:inbound-endpoint path="requests"/>
      <set-variable variableName="originalPayload" value="#[payload]"/>
     <catch-exception-strategy when="#
       [exception.causedBy(java.lang.IllegalArgumentException)]">
              <set-payload value="#[flowVars['originalPayload']"/>
              <set-property propertyName="props" value="">
              <vm:outbound-endpoint path="dlq"/>
       </catch-exception-strategy>
        <catch-exception-strategy when="#
             [exception.causedBy(java.lang.IllegalStateException)]">
              <set-payload value="#[flowVars['originalPayload']"/>
              <set-property propertyName="props" value="....">
              <vm:outbound-endpoint path="dlq"/>
        </catch-exception-strategy>
    </choice-exception-strategy>

1 个答案:

答案 0 :(得分:0)

您的案例似乎有效,但如果您希望在传输端点中可以访问属性/字段,那么它应该是一个出站属性。