0

我在使用 wso2 数据版本 2.6.3 时遇到问题,无法在 sql server 中执行过程:我的配置:

<data name="TestDS">         
    <config id="ds_test">                  
  <property name="org.wso2.ws.dataservice.driver">net.sourceforge.jtds.jdbc.Driver</property>                  
  <property name="org.wso2.ws.dataservice.protocol">jdbc:jtds:sqlserver://172.16.16.16:1433/db_stores;instance=sql1</property>                  
  <property name="org.wso2.ws.dataservice.user">storeuser</property>                  
  <property name="org.wso2.ws.dataservice.password">3st0re123</property>                  
  <property name="org.wso2.ws.dataservice.autocommit"></property>         
</config>         
<query id="qrySearchTest" useConfig="ds_test">                  
  <sql>exec USP_PesquisaSistema  @SIS_CRIPTOGRAFIA_PASSAPORTE =:chave</sql>                  
  <result element="sistemas" rowName="sistema" defaultNamespace="http://store.test.org.br">                           
     <element name="codigoSistema" column="SIS_IDF" xsdType="xs:integer" />                           
     <element name="siglaSistema" column="SIS_SIGLA" xsdType="xs:string" />                           
     <element name="nomeSistema" column="SIS_NOME" xsdType="xs:string" />                  
  </result>                  
  <param name="chave" sqlType="STRING" ordinal="1" />         
</query>         
    <operation name="SearchTest">                  
      <call-query href="qrySearchTest">                           
         <with-param name="chave" query-param="chave" />                  
      </call-query>         
    </operation>
</data>

和错误java.lang.AbstractMethodError

TID: [0] [WSO2 Data Services Server] [2012-09-24 09:44:32,762] ERROR org.apache.axis2.transport.http.AxisServlet} - {org.apache.axis2.transport.http.AxisServlet} java.lang.AbstractMethodError

    at org.apache.commons.dbcp.DelegatingResultSet.isClosed(DelegatingResultSet.java:688)
    at org.apache.commons.dbcp.DelegatingResultSet.isClosed(DelegatingResultSet.java:688)
    at org.wso2.carbon.dataservices.core.description.query.SQLQuery.processStoredProcQuery(SQLQuery.java:904)
    at org.wso2.carbon.dataservices.core.description.query.SQLQuery.runQuery(SQLQuery.java:2071)
    at org.wso2.carbon.dataservices.core.description.query.Query.execute(Query.java:252)
    at org.wso2.carbon.dataservices.core.engine.CallQuery.execute(CallQuery.java:185)
    at org.wso2.carbon.dataservices.core.engine.CallQueryGroup.execute(CallQueryGroup.java:110)
    at org.wso2.carbon.dataservices.core.description.operation.Operation.execute(Operation.java:71)
    at org.wso2.carbon.dataservices.core.engine.DataService.invoke(DataService.java:592)
    at org.wso2.carbon.dataservices.core.engine.DSOMDataSource.execute(DSOMDataSource.java:99)
    at org.wso2.carbon.dataservices.core.engine.DSOMDataSource.serialize(DSOMDataSource.java:110)
    at org.wso2.carbon.dataservices.core.engine.DSOMDataSource.getReader(DSOMDataSource.java:116)
    at org.apache.axiom.om.impl.llom.OMSourcedElementImpl.getDirectReader(OMSourcedElementImpl.java:225)
    at org.apache.axiom.om.impl.llom.OMSourcedElementImpl.forceExpand(OMSourcedElementImpl.java:254)
    at org.apache.axiom.om.impl.llom.OMSourcedElementImpl.getFirstOMChild(OMSourcedElementImpl.java:867)
    at org.apache.axiom.om.impl.OMNavigator._getFirstChild(OMNavigator.java:196)
    at org.apache.axiom.om.impl.OMNavigator.updateNextNode(OMNavigator.java:140) .....
    ......

在 2.5.1 版本中有效。如果我粘贴没有 SP 的 sql 查询,则可以。

可以帮我 ?感谢

4

1 回答 1

1

您收到此错误是因为在 DSS 2.6.3 中,您需要一个 JDBC4 驱动程序,它只有 ResultSet.isClosed() 方法..所以基本上下载 SQL Server JDBC4 驱动程序 (sqljdbc4) 并尝试看看。此外,在 DSS 3.0.0(即将发布)中,已通过将 ResultSet.isClosed 设为可选来修复它。

干杯,安佳娜。

于 2012-09-27T12:12:16.303 回答