2017-04-11 55 views
0

我希望能夠在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> 
+0

''是多餘的,因爲有效載荷與myFlow內部相同。就像亞歷克斯費爾南德斯說的,你可能正在尋找出境物業。 – Yevgeniy

回答

0

您的情況似乎有效,但如果您希望在傳輸端點中可以訪問屬性/字段,它應該是出站屬性。