0
在MUnit模擬消息處理器中,我們如何在帶消息有效負載字段的返回中指定非特定有效負載,例如Mule消息收集(逗號分隔的XML數據)。在MUnit模擬處理器中指定Mule消息收集作爲有效載荷
一般情況下,如果我們只是硬編碼的值,它將被視爲一個字符串,這使得它很難進一步閱讀。
我們如何指定數據類型爲Mule Message Collection?
請幫我解決這個問題。
在此先感謝。
在MUnit模擬消息處理器中,我們如何在帶消息有效負載字段的返回中指定非特定有效負載,例如Mule消息收集(逗號分隔的XML數據)。在MUnit模擬處理器中指定Mule消息收集作爲有效載荷
一般情況下,如果我們只是硬編碼的值,它將被視爲一個字符串,這使得它很難進一步閱讀。
我們如何指定數據類型爲Mule Message Collection?
請幫我解決這個問題。
在此先感謝。
使用MEL表達式來創建集合。根據您的示例,以逗號分隔的字符串列表,您可以使用MEL與任何Java/MVEL操作創建一個列表:
<mock:then-return payload="#[Arrays.asList(('${mycommaseparatedlistofstrings}'.split(',')))]" />
感謝Ryan的建議。它似乎現在工作。 我還有一個問題。我正在爲MUnit實現一個將Mule Message Collection作爲其中一個處理器的返回負載的流。所以這個集合有一個非常大的XML數據。如果我硬編碼這些數據進行測試,我會得到一個堆棧溢出錯誤。有什麼辦法可以解決這個問題嗎? –
如果XML很大,可以從類路徑中的文件讀取它,例如。 Munit具有以下輔助函數:#[getResource(xml/myxmlfile.xml')。asString()]。更詳細的答案,我會創建另一個問題。 –