【发布时间】:2023-01-13 06:01:02
【问题描述】:
我有一个包含许多字段的有效负载,但我只想将它们不为空的字段发送到后端,所以我尝试使用丰富的调解器来删除那些为空的字段,但我收到了一个错误。
这是我的有效载荷工厂:
<payloadFactory media-type="json">
<format>
{
"_putupdateuser": {
"BADLOGINS": $1,
"EMAIL": "$2",
"FRAMED_ROUTE": "$3"
}
}
</format>
<args>
<arg evaluator="xml" expression="get-property('BADLOGINS')"/>
<arg evaluator="xml" expression="get-property('EMAIL')"/>
<arg evaluator="xml" expression="get-property('FRAMED_ROUTE')"/>
</args>
</payloadFactory>
这是我对 enrich mediator 的实现:
<enrich>
<source clone="false" xpath="json-eval($._putupdateuser.FRAMED_ROUTE)"/>
<target action="remove" type="body"/>
</enrich>
这是我得到的错误:
Caused by: com.google.gson.stream.MalformedJsonException: Unexpected value at line 3 column 32 path $._putupdateuser.BADLOGINS
at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1568)
【问题讨论】:
标签: wso2 wso2-esb wso2-enterprise-integrator