0

dataTables が単一行のデータの表示を拒否している理由を理解するのに苦労していますが、1 行を超えるデータ セットに対しては完全に正常に機能します。ここでJSONメッセージの形式に問題があるか、ビューフィルターが機能していないと思うので、これも問題を示しているとは思いません....直接条件を付けて値を返しますDBテーブルから

これは、正常に機能する 10 レコードの JSON 応答です。

<sequence xmlns="http://ws.apache.org/ns/synapse" name="Getmessage_seq" onError="fault" trace="disable">
   <property name="CONTENT_TYPE" value="application/json" scope="axis2" type="STRING"/>
   <filter xmlns:ns="http://org.apache.synapse/xsd" xmlns:s="http://ws.wso2.org/dataservice" xpath="s://logid/text()=' '">
      <then>
         <payloadFactory>
            <format>
               <ResponseJSON xmlns="">
                  <Exception>NO Data Found In Database</Exception>
                  <Status>404</Status>
               </ResponseJSON>
            </format>
         </payloadFactory>
         <send/>
      </then>
      <else>
         <property name="AAR" expression="count(//s:Datalist)" scope="default" type="STRING"/>
         <enrich>
            <source clone="true" type="custom" xpath="//s:Datalist"/>
            <target action="replace" type="property" property="List"/>
         </enrich>
         <property name="CONTENT_TYPE" value="application/json" scope="axis2"/>
         <payloadFactory>
            <format>
               <ResponseJSON xmlns="">
                  <Body>$1</Body>
                  <Status>200</Status>
                  <Total>$2</Total>
               </ResponseJSON>
            </format>
            <args>
               <arg expression="get-property('List')"/>
               <arg expression="get-property('AAR')"/>
            </args>
         </payloadFactory>
         <send/>
      </else>
   </filter>
</sequence>

enter code here

最後に、テーブルに複数のレコード データが含まれている場合、json の配列として表示されますが、1 つのレコード データになると、json の配列として表示されません。

4

1 に答える 1