Mulesoft:找不到用于转换“ SimpleDataType {type = java.util.LinkedHashMap的转换器

时间:2018-11-26 12:22:28

标签: mule

我正在尝试从Netsuite获取数据并将其使用Mulesoft Dataweave元素以及 When-Otherwise 按照以下代码片段保存在salesforce对象中,但出现以下错误:

  

找不到转换器将“ SimpleDataType {type = java.util.LinkedHashMap,mimeType =' / ',encoding ='null'}”转换为“ CollectionDataType {type = java.util .List,itemType = java.lang.Object,mimeType =' / '}”。

由于我是Mulesoft的新手,所以不确定如何将Map转换为List。 如果我不使用 When-Otherwise ,它会给出:

  

如果来自Netsuite的值为null,则“不能将:null强制为:string错误”。

   <dw:transform-message doc:name="Transform Message">
        <dw:set-payload><![CDATA[%dw 1.0
            %output application/java 
            ---
            {
                Some_Id__c: payload.customFieldList.customField[0].StringCustomFieldRef__custbody_reference_id as :string when payload.customFieldList.customField[0].StringCustomFieldRef__custbody_reference_id != null otherwise ""
            } 
            ]]></dw:set-payload>
   </dw:transform-message>

1 个答案:

答案 0 :(得分:0)

如果需要列表,请将其包装在方括号中。另外,请尝试使用默认值:

[
  {
    Some_Id__c: payload.customFieldList.customField[0].StringCustomFieldRef__custbody_reference_id as :string default ""
  }
]