cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC Receiver response is not coming

Former Member
0 Kudos

Hi All,

I am doing File to JDBC, i am sending value to JDBC to fatch the records from Oracle, but i am not getting the response.

in sxmb_moni its showing success 2 msg but JDBC_req and JDBC_req_response are showing null.

I have create the JDBC_req structure like this . for Oracle db i have read access.

I have created the req structure like this

<Statment>

<anyName>

<action>

<access>

Thanks,

Venkat

Accepted Solutions (1)

Accepted Solutions (1)

prateek
Active Contributor
0 Kudos

File sender's default QOS is async and therefore it will not expect response from jdbc receiver. If you need response in this case, then either you have to use BPM or use adapter module at sender channel to change its behavior to sync.

Regards,

Prateek

Answers (6)

Answers (6)

Former Member
0 Kudos

Hi,

it don't <STATMENT> is <STATEMENT>, you must be changed this in the data type

dharamveer_gaur2
Active Contributor
0 Kudos

Hi

You have to use table name. Right now you are using dbtablename, so replace this with actual database table name from which you want to fetch data.

Former Member
0 Kudos

Hi Thanks for your help,

File_Indication

DATASOUCE

+DATA

++ITEM

++SET_OF_BOOKS_ID

MT_B_JDBC_REQ

+STATMENT

++anyName

++action attarubite

+++access<<MT_B_JDBC_REQ><STATMENT><anyName action=u201D SQL_QUERYu201D><access>select SET_OF_BOOKS_ID from APPS.GL_SETS_OF_BOOKS where SET_OF_BOOKS_ID=6</access></anyName></STATMENT></MT_B_JDBC_REQ>

++++KEY

++++SET_OF_BOOKS_ID

Mapping FILE to JDBC_REQ

I have mapped like this ITEM to STATMENT

File Filed to JDBC_REQ Field

This is the File request data

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:MT_B_File_Indication xmlns:ns0="http://TESTING-xi.com/oraclegl/bcgl">

<DATASOURCE />

- <DATA>

- <ITEM>

<SET_OF_BOOKS_ID>6</SET_OF_BOOKS_ID>

</ITEM>

</DATA>

</ns0:MT_B_File_Indication>

File Sender apdaptor error

Error: com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException

JDBC receiver adaptor error

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:MT_B_JDBC_REQ xmlns:ns0="http://TESTING-xi.com/oraclegl/bcgl">

- <STATMENT>

- <anyName action="SQL_QUERY">

- <access>

- <KEY>

<SET_OF_BOOKS_ID>6</SET_OF_BOOKS_ID>

</KEY>

</access>

</anyName>

</STATMENT>

</ns0:MT_B_JDBC_REQ>

Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. 'anyName' (structure 'STATMENT'): java.sql.SQLException: SQL statement to execute cannot be empty or null

Thanks,

Venkat

former_member200962
Active Contributor
0 Kudos

Hi,

you should have the receiver JDBC structure as mentioned in this link:

http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm

Rename the node <anyName> with <dbTableName>

Also since you are retrieving some data you need to select the action as SELECT (actions mentioned in the give link)....further action has to be an attribute under the dbTableName node.....

Also to get the response you need to use an Inbound Async Message Interface....as file adapter cannot process Synchronous Scenarios...

Regards,

Abhishek

Edited by: abhishek salvi on Mar 10, 2009 7:46 PM

Former Member
0 Kudos

Hi,

Still i have the same problem, i have chaged as you said not i can see the in moni the from file sender to JDBC request i can see the data but still my JDBC adaptor is showing error

Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. 'dbTableName' (structure 'STATMENT'): java.sql.SQLException: SQL statement to execute cannot be empty or null

there is no data in JDBC response. i have used the Modules for File sender adaptor. I have in ID

1 receiver determatation 1 interface determation 1 sender agreement and 2 receiver agreements.

am doing any thing wrong here for my File to JDBC sync modle. pls suggest me i am struck here.

Thanks,

Venkat

former_member200962
Active Contributor
0 Kudos

Hi,

Can you please post the Request xml that you are sending to JDBC? There is some value that is not passed in the request.....

Regards,

Abhishek.

Former Member
0 Kudos

Kindly post ur Request and Response Structure of JDBC.

Former Member
0 Kudos

Kindly post ur Request and Response Structure, XML Payload of JDBC.

Former Member
0 Kudos

Use JDBC Format like this

<root>

<StatementName1>

<dbTableName action=u201DUPDATEu201D | u201CUPDATE_INSERTu201D>

<table>realDbTableName</table>

<access>

<col1>val1</col1>

</access>

<key1>

<col2>val2old</col2>

</key1>

</dbTableName>

</StatementName1>

The response document has the following format;:

<root_response>

<update_count>count</update_count>

</root_response>

Further File Adapter is Async,so u need to use either BPM or use adapter module at File Sender as Sync.

Edited by: ragu r on Mar 10, 2009 11:19 AM

Former Member
0 Kudos

Hi Thanks for your quick replys,

as advised by you i have chaged the mapping

I have taken the moni msg and tested in mapping. i am geting successful.

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:MT_File_Indication xmlns:ns0="http://Testing-xi.com/oraclegl/bcgl">

- <record>

- <row>

<BOOKS_ID>6</BOOKS_ID>

</row>

</record>

</ns0:MT_File_Indication>

when i check the JDBC adaptor i am getting error now

Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. 'anyName' (structure 'STATMENT'): java.sql.SQLException: SQL statement to execute cannot be empty or null

I am using the Modules in sender file adaptor i have seen file rfc file so i am following the same.

even for file adaptor also i am getting error

Error: com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException

Error: com.sap.aii.af.service.util.transaction.api.TxManagerException: Unable to roll back transaction: com.sap.engine.services.ts.exceptions.BaseIllegalStateException

in moni the response msg id its showing like this

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

- <!-- Call Adapter

-->

- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:Category>XIAdapterFramework</SAP:Category>

<SAP:Code area="MESSAGE">GENERAL</SAP:Code>

<SAP:P1 />

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException</SAP:AdditionalText>

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack />

<SAP:Retry>M</SAP:Retry>

</SAP:Error>

could you pls help me where i am doing wrong.

Thanks,

Venkat.

Former Member
0 Kudos

Hi Venkat,

FYI:

RDBMS system integration using XI 3.0 JDBC Sender/Receiver adapter

/people/saravanakumar.kuppusamy2/blog/2005/01/19/rdbms-system-integration-using-xi-30-jdbc-senderreceiver-adapter

Calling stored procs in MaxDb using SAP Xi

/people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi

JDBC Stored Procedures

/people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures

FILE to JDBC Adapter using SAP XI 3.0

/people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30

Lookupu2019s in XI made simpler

/people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

XI: How-to on JDBC receiver response

/people/siva.maranani/blog/2005/09/16/xi-how-to-on-jdbc-receiver-response

Cheers

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

if _req is showing null then your mapping may not work

(so you cannot expect any response)

check out your mapping using the payload from SXI_MONITOR

and paste it in the test tab of your interface mapping

Regards,

Michal Krawczyk