我正在尝试连接下面的mule Transform消息中的字符串,但是我在运行时获得了以下异常。有谁可以请帮助我吗?我也是骡子的新手。
%dw 1.0
%output application/json
---
{
references : "" when payload[0].person_id==null otherwise "person/"+payload[0].person_id,
}
异常::
Root Exception stack trace:
com.mulesoft.weave.mule.exception.WeaveExecutionException: Exception while executing:
references : "" when payload[0].person_id==null otherwise "person/"+payload[0].person_id,
^
Type mismatch for '+' operator
found :string, :number
答案 0 :(得分:2)
请参阅Mule Documentation以获取Mule Dataweave运算符。对于串联字符串++
,应使用运算符。喜欢
%dw 1.0
%output application/json
---
{
references : "" when payload[0].person_id==null otherwise "person/" ++ payload[0].person_id
}
希望这有帮助。
答案 1 :(得分:2)
使用++运算符,它是Dataweave中的连接运算符。
给出Mulesoft文档中的示例
%dw 1.0
%output application/json
---
{
name: "Mule" ++ "Soft"
}
更多请阅读以下文档
https://docs.mulesoft.com/mule-user-guide/v/3.8/dataweave-operators#concat
答案 2 :(得分:0)
%dw 1.0
%output application/json
---
{
name: payload.firstName ++ payload.lastName
}
确保任何值(firstname或lastName)不为null。