我正在使用wso2 esb 4.9并创建了一个带有payloadFactory元素的代理并使用REST调用它来启动我的BPMN进程,但问题是esb无法转换单个元素json数组和esb删除json数组的括号。这里是我的代理:WSO2 ESB数组与单个元素JSON到JSON转换括号丢失
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="InformationIncome"
transports="https,http"
statistics="disable"
trace="disable"
startOnLoad="true">
<target>
<inSequence>
<log level="full"/>
<property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
<property name="OUT_ONLY" value="true"/>
<payloadFactory media-type="json">
<format>
{
"processDefinitionId":"myProcess:6:25188",
"variables": [
{
"name":"text",
"value":"$1"
}
]
}
</format>
<args>
<arg evaluator="json" expression="$.text"/>
</args>
</payloadFactory>
<header name="Authorization"
scope="transport"
expression="fn:concat('Basic ', base64Encode('admin:admin'))"/>
<log level="full"/>
<store messageStore="InformationIncomeMS"/>
</inSequence>
</target>
<description/>
</proxy>
,这里是我的要求,从soapUI的内容:
{
"text" : "Hello"
}
而且我发现我的JSON变成这样payloadFactory后:
{
"processDefinitionId":"myProcess:6:25188",
"variables": {
{
"name":"text",
"value":"Hello"
}
}
}
它似乎esb json转换器删除与单个元素的数组括号内。有任何想法吗?
这个问题也存在使用WSO2DSS服务器,请问有什么办法呢? – zygimantus
我试图在我的.net微服务中编写一个模型联编程序,将json转换为单个元素数组的有效格式,并将整数转换为字符串转换,我知道这是不正确的,因为两个模块以这种方式相互耦合,我认为主要问题存在于jsoStreamBuilder中的wso2 ESB –