【问题标题】:convert base64 to byte[] using Dataweave in Mule 4使用 Mule 4 中的 Dataweave 将 base64 转换为 byte[]
【发布时间】:2020-04-20 00:12:36
【问题描述】:

使用 Mulesoft 从 Salesforce 获取作为 base64 格式的 PDF 附件,如下所示: toBase64(payload as Binary)

但是当将相同的有效负载作为文件内容发送到 NetSuite 时,出现错误。发送为: write(fromBase64(acc.Body as String) as Binary,"application/octet-stream" )

错误:无法将类型“org.mule.weave.v2.io.ByteArraySeekableStream”的属性值转换为属性“内容”所需的类型“字节[]”;嵌套异常是 java.lang.IllegalArgumentException:无法将类型“org.mule.weave.v2.io.ByteArraySeekableStream”的值转换为属性“content [0]”所需的类型“byte”:PropertyEditor [org.springframework.beans。 propertyeditors.CustomNumberEditor] 返回了 'org.mule.weave.v2.io.ByteArraySeekableStream' 类型的不适当值。

关于如何将 base64 转换为 byte[] 的任何想法?

【问题讨论】:

    标签: salesforce netsuite dataweave mulesoft


    【解决方案1】:

    您可以使用class 元数据提示让数据编织 java writer 知道您希望二进制表示为 byte[]

     output application/java
     ---
     fromBase64(acc.Body as String) as Binary {class: "byte[]"}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-09
      • 1970-01-01
      相关资源
      最近更新 更多