I am trying to create a web service in WebSphere 5.0.2 using a DADX file.
When the operation is a simple SQL select then the service works correctly. When, however, the operation is a call to a stored procedure I get the following error if I use a simple
JDBC connection:
[SOAPException: faultCode=SOAP-ENV:Server; msg=COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0106E Connection is closed. SQLSTATE=08003]
I have also tried using a connection pool. In that case I get a StaleConnectionException.
(I have tried to find other posts on this topic and I have found two but both were closed for administrative reasons.)
Any help would be appreciated.
Thys
The DADX file for my service is:
<?xml version="1.0"?>
<DADX xmlns="http://schemas.ibm.com/db2/dxx/dadx"<br /> xmlns:xsd="http://www.w3.org/2001/XMLSchema"<br /> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl
ocumentation>
This service invokes a DB2 Stored Procedure
@DB2 is the corresponding DB2 subsystem.
1 Result set is returned by this Stored Procedure.
</wsdl
ocumentation>
<result_set_metadata name="cursorInfo1" rowName="row1">
<column name="REPORT_NUMBER" type="INTEGER" nullable="true"/>
<column name="REPORT_CATEGORY" type="CHAR" nullable="true"/>
<column name="REPORT_TITLE" type="CHAR" nullable="true"/>
<column name="SHORT_DESCRIPTION" type="CHAR" nullable="true"/>
<column name="LONG_DESCRIPTION" type="CHAR" nullable="true"/>
<column name="REQ_FILTER_COLS" type="VARCHAR" nullable="true"/>
</result_set_metadata>
<operation name="getReportList">
<wsdl
ocumentation>
Returns
1 Result set
Output Parameters :
RETURN_CODE
REASON_CODE
ERROR_TEXT
SP_SQLCODE
SP_SQLTOKENS
SP_SQLSTATE
REPORT_ID_TS
ROW_COUNT
</wsdl
ocumentation>
<call>
<SQL_call>CALL (
:appUserId
,
ebugLevel
,:returnCode
,:reasonCode
,:errorText
,:spSqlcode
,:spSqltokens
,:spSqlstate
,:reportCategory
,:sortOrder
,:reorderFlag
,:reportIdTs
,:lineOffset
,
ageSize
,:rowCount
)</SQL_call>
<parameter name="appUserId" type="xsd:string" kind="in"/>
<parameter name="debugLevel" type="xsd:string" kind="in"/>
<parameter name="returnCode" type="xsd:int" kind="out"/>
<parameter name="reasonCode" type="xsd:string" kind="out"/>
<parameter name="errorText" type="xsd:string" kind="out"/>
<parameter name="spSqlcode" type="xsd:int" kind="out"/>
<parameter name="spSqltokens" type="xsd:string" kind="out"/>
<parameter name="spSqlstate" type="xsd:string" kind="out"/>
<parameter name="reportCategory" type="xsd:string" kind="in"/>
<parameter name="sortOrder" type="xsd:string" kind="in"/>
<parameter name="reorderFlag" type="xsd:string" kind="in"/>
<parameter name="reportIdTs" type="xsd:string" kind="in/out"/>
<parameter name="lineOffset" type="xsd:int" kind="in"/>
<parameter name="pageSize" type="xsd:short" kind="in"/>
<parameter name="rowCount" type="xsd:int" kind="out"/>
<result_set name="cursor1" metadata="cursorInfo1"/>
</call>
</operation>
</DADX>