0

wso2esb 没有做出正确的响应下面是我的代理服务。

<?xml version="1.0" encoding="UTF-8"?>
    <proxy xmlns="http://ws.apache.org/ns/synapse"
           name="Gettreadings"
           transports="https http"
           startOnLoad="true"
           trace="disable">
       <description/>
       <target>
          <inSequence onError="fault">
             <property name="CONTENT_TYPE"
                       value="application/json"
                       scope="axis2"
                       type="STRING"/>
             <property name="HTTP_METHOD" value="POST" scope="axis2" type="STRING"/>
             <payloadFactory>
                <format>
                   <body:mongo_find xmlns:body="http://ws.wso2.org/dataservice"/>
                </format>
             </payloadFactory>
             <send>
                <endpoint>
                   <address uri="http://localhost:9764/services/Mongotreadings/" format="soap11"/>
                </endpoint>
             </send>
             <property name="ERROR_MESSAGE"
                       expression="get-property('ERROR_MESSAGE')"
                       scope="axis2"
                       type="STRING"/>
             <property name="ERROR_CODE"
                       expression="get-property('ERROR_CODE')"
                       scope="axis2"
                       type="STRING"/>
             <property name="FORCE_ERROR_ON_SOAP_FAULT"
                       value="true"
                       scope="default"
                       type="STRING"/>
             <log level="full"/>
          </inSequence>
          <outSequence>
             <property name="CONTENT_TYPE"
                       value="application/json"
                       scope="axis2"
                       type="STRING"/>
             <log level="full"/>
             <send/>
          </outSequence>
       </target>
    </proxy>

我的 mongodb 中有两条记录。你能指导我它是否支持 mongodb。为什么它在输出中给出反斜杠,我没有得到任何东西。当我运行 curl 命令时,响应看起来像这样

{"Body":{"Datalist":["{ \"_id\" : { \"$oid\" : \"51cad951949c798d7d84de49\"} , \"readingsid\" : -1.0 , \"actiondetailid\" : -1.0 , \"slno\" : 1.0 , \"parameterid\" : -1.0 , \"inputvalue\" : 1.0 , \"inputtext\" : \"NONE\" , \"finalvalue\" : 1.0}","{ \"_id\" : { \"$oid\" : \"51cbcba2998f11db765f3960\"} , \"readingsid\" : -2.14748362E9 , \"actiondetailid\" : -2.14748362E9 , \"slno\" : \"1\" , \"parameterid\" : -1.0 , \"inputvalue\" : 10.0 , \"inputtext\" : \"Test Value\" , \"finalvalue\" : 5.0}"]}}
4

1 回答 1

0

在 outsequence 中使用 <property name="messageType" value="application/json" scope="axis2"/>,因此,它将选择正确的 messageFormatter。

于 2013-07-10T08:44:20.363 回答