如何将字符串添加到 Transform Message 组件中的 Java 列表?
How do I add a string to a Java list in a Transform Message component?
我正在设置如下变量:
<set-variable value='#[[]]' doc:name="Set Doc Array" doc:id="bfb46451-ac45-4d73-8189-5b73cdc300b3" variableName="docHashMap"/>
然后我尝试在 foreach 循环内向该列表添加元素,如下所示:
<ee:transform doc:name="Transform Message" doc:id="ad2a1dd7-0973-4854-b44c-bdfe8eb54778">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
import * from dw::core::Binaries
output application/java
---
vars.docHashMap.add({
"Attachment_Document_Type": vars.factIntakeDocPayload.documentId,
"Attachement_Content_Type": vars.documentMetadata.contentType,
"Attachment_Content": toBase64(payload)
})]]></ee:set-payload>
</ee:message>
</ee:transform>
在循环之后我添加了一个 Logger 组件并且我正在记录 docHashMap
变量如下:
<logger level="WARN" doc:name="Logger" doc:id="482034d9-00c2-4ae1-8fd3-e999f8ece196" message="#[vars.docHashMap]"/>
但它是空的,这意味着我在控制台上得到的只是 []
,为什么?我在这里缺少什么?顺便说一下,我是 Mule4 的新手。
基本上您需要做的就是用新名称重新设置变量。使用 set-variable
<ee:transform doc:name="Transform Message" doc:id="ad2a1dd7-0973-4854-b44c-bdfe8eb54778">
<ee:set-variable variableName="docHashMap"><![CDATA[%dw 2.0
import * from dw::core::Binaries
output application/java
---
vars.docHashMap + ({
"Attachment_Document_Type": vars.factIntakeDocPayload.documentId,
"Attachement_Content_Type": vars.documentMetadata.contentType,
"Attachment_Content": toBase64(payload)
})]]></ee:set-variable>
</ee:transform>
我正在设置如下变量:
<set-variable value='#[[]]' doc:name="Set Doc Array" doc:id="bfb46451-ac45-4d73-8189-5b73cdc300b3" variableName="docHashMap"/>
然后我尝试在 foreach 循环内向该列表添加元素,如下所示:
<ee:transform doc:name="Transform Message" doc:id="ad2a1dd7-0973-4854-b44c-bdfe8eb54778">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
import * from dw::core::Binaries
output application/java
---
vars.docHashMap.add({
"Attachment_Document_Type": vars.factIntakeDocPayload.documentId,
"Attachement_Content_Type": vars.documentMetadata.contentType,
"Attachment_Content": toBase64(payload)
})]]></ee:set-payload>
</ee:message>
</ee:transform>
在循环之后我添加了一个 Logger 组件并且我正在记录 docHashMap
变量如下:
<logger level="WARN" doc:name="Logger" doc:id="482034d9-00c2-4ae1-8fd3-e999f8ece196" message="#[vars.docHashMap]"/>
但它是空的,这意味着我在控制台上得到的只是 []
,为什么?我在这里缺少什么?顺便说一下,我是 Mule4 的新手。
基本上您需要做的就是用新名称重新设置变量。使用 set-variable
<ee:transform doc:name="Transform Message" doc:id="ad2a1dd7-0973-4854-b44c-bdfe8eb54778">
<ee:set-variable variableName="docHashMap"><![CDATA[%dw 2.0
import * from dw::core::Binaries
output application/java
---
vars.docHashMap + ({
"Attachment_Document_Type": vars.factIntakeDocPayload.documentId,
"Attachement_Content_Type": vars.documentMetadata.contentType,
"Attachment_Content": toBase64(payload)
})]]></ee:set-variable>
</ee:transform>