I have a similar problem. The output which i’m getting from DB is of collection type. When I have used StoredProcedureWithSignature, collection variable is reflecting as STRUCT type variable. But when I execute the adapter service getting the below error:
Could not run ‘sample’ com.wm.pkg.art.error.DetailedServiceException: [ART.117.4002] Adapter Runtime (Adapter Service): Unable to invoke adapter service provider.adapter:sample.
[ADA.1.316] Cannot execute the SQL statement “call GETASSETDETAIL( ?, ?, ?, ?, ?, ?, ?)”. "
(65000/6550) ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to ‘GETASSETDETAIL’
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Attached is input output structure from webMethods.
DB SP signature defined as:
PROCEDURE getAssetDetail (
io_KA_TYPE_CD IN OUT VARCHAR2,
io_KA_ASST_VAL IN OUT VARCHAR2,
io_SOURCE IN OUT VARCHAR2,
o_STATUS OUT VARCHAR2,
o_KA_DESC OUT VARCHAR2,
o_KA_ATTR_COLLECTION OUT ASSET_ATTR_COLLECTION,
o_RELATION_COLLECTION OUT RELATIONSHIP_COLLECTION);
Where ASSET_ATTR_COLLECTION defined as:
create or replace TYPE ASSET_ATTR_COLLECTION AS TABLE OF ASSET_ATTR;
And ASSET_ATTR is defined as:
create or replace TYPE ASSET_ATTR AS OBJECT (ATTR_NAME VARCHAR2(50), ATTR_VAL_TXT VARCHAR (4000))
Request you to guide us what are the steps we need to do while creating the adapters to handle such output types from DB.
#Adapters-and-E-Standards#webMethods#Integration-Server-and-ESB