如何使用WSO2 DSS在REST服务上返回多条记录?

时间:2016-10-16 18:52:57

标签: rest wso2 wso2dss dss

我正在使用WSO2 DSS和MySQL数据库。如果我只从数据库请求1条记录,它可以正常工作。但是当我尝试在REST服务中选择多个注册表时,它并不起作用。错误是:

{
    "Fault": {
    "faultcode": "soapenv:Server"
    "faultstring": "Error while writing to the output stream using JsonWriter"
    "detail": ""
    }-
}

我的数据服务:

<data name="item" transports="http https local">
<config enableOData="false" id="default">
  <property name="carbon_datasource_name">mysql</property>
</config>
<query id="selectActiveItems" useConfig="default">
  <sql>SELECT descricao FROM ITEM WHERE ativo = true and id_responsavel = ?</sql>
  <result escapeNonPrintableChar="true" outputType="json">{  "_item": {  "descricao":$descricao}}</result>
  <param name="id_responsavel" ordinal="1" sqlType="INTEGER"/>
 </query>
  <resource method="POST" path="selectActiveItems">
   <call-query href="selectActiveItems">
     <with-param name="id_responsavel" query-param="id_responsavel"/>
    </call-query>
   </resource>
</data>

有什么属性可以设置我没有设置?

2 个答案:

答案 0 :(得分:1)

从数据库响应多条记录的正确输出是:

<result escapeNonPrintableChar="true" outputType="json">
  {"_itens":{"item": [ {"nome":$nome,"descricao":$descricao} ] }}
</result>

答案 1 :(得分:0)

我以前见过这个,可以通过更改邮件构建器/格式化程序来解决。

请参阅我的回答here