0

Sybase でストアド プロシージャを使用して WSO2 データ サービスを作成しています。ローカル変数に値を割り当てるたびにエラーが発生します。

ストアド プロシージャは次のとおりです ... Declare @user_id INT select @user_id =333
....

上記のselectステートメントが問題を引き起こし、以下のエラーを引き起こしているようです

DS Code: DATABASE_ERROR Nested Exception:- javax.xml.stream.XMLStreamException: DS Fault Message: Error in 'SQLQuery.processStoredProcQuery': The method com.sybase.jdbc3.jdbc.SybCallableStatement.getMoreResults(int) has not been completed and should not be called. DS Code: DATABASE_ERROR Source Data Service:- Name: testAmit Location: \testAmit.dbs Description: N/A Default Namespace: http://ws.wso2.org/dataservice Current Request Name: amitTestOps Current Params: {invId=22} Nested Exception:- com.sybase.jdbc3.utils.UnimplementedOperationException: The method com.sybase.jdbc3.jdbc.SybCallableStatement.getMoreResults(int) has not been completed and should not be called.  </soapenv:Text>

select ステートメントにコメントを付けると、正常に動作します。

私のデータサービスは次のようになります

<data name="testAmit" transports="http https local">
   <config enableOData="false" id="sybaseAmit">
      <property name="driverClassName">com.sybase.jdbc3.jdbc.SybDriver</property>
      <property ***db config deatils which I have omitted ***</property>
   </config>
   <query id="amitquery" useConfig="sybaseAmit">
      <sql>exec sp_createCorrespondence ?</sql>
      <result element="correspondences" rowName="correspondence">
         <element column="correspondence_id" name="correspondenceIdValue" xsdType="integer"/>
      </result>
      <param name="invId" sqlType="INTEGER"/>
   </query>
   <operation name="amitTestOps">
      <call-query href="amitquery">
         <with-param name="invId" query-param="invId"/>
      </call-query>
   </operation>
</data>

どんな助けでも大歓迎です!(WSO EI バージョン 6.1.1、jconn3.jar、sybase ASE 15.7 を使用)

4

0 に答える 0