cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC : error in receiver communication channel?

Former Member
0 Kudos

Hi Experts ,

I am doing a JDBC to JDBC scenario. The following error comes in my receiver communication channel monitoring.

Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. 'VIN_STG_STORER_RMS' (structure 'Statement'): java.sql.SQLException: FATAL ERROR document format in structure 'Statement': expected 'access' tag(s) not found

My receiver data type has got the 'access' tag. What other reason can cause this error?

Receiver table name : VIN_STG_STORER_RMS

Regards,

Shamly

Accepted Solutions (1)

Accepted Solutions (1)

aashish_sinha
Active Contributor
0 Kudos

Hi,

Just check out for your xml structure. it may be possible that your structure is incoorect or badly defined.

See this link

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

Regards

Aashish Sinha

PS : reward points if helpful

Answers (3)

Answers (3)

Former Member
0 Kudos

YOu are getting Error in the Receiver JDBC adapter. and this is specific to your JDBC Message Structure.

Try to look on this BLOG /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30 (for Message foramt of JDBC receiver.)

thanks

farooq

Former Member
0 Kudos

Hi,

Make sure that the table name has been given in the Caps only and the fields specified in the structure and the fields in the databse are same kind of case( either upper case or lower case)

And also make sure abt the Query that is mentioning in the Query parameter. it also case sensitive

Check this

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/jdbc%2bto%2bjdbc

Regards

Seshagiri

ranjit_deshmukh
Active Participant
0 Kudos

please paste your target xml structure

and the error you get in moni.

Ranjit

Former Member
0 Kudos

Hi Ranjit,

My moni shows processed successfully. but the error is in communication channel.

I have pasted below the target xml structure. Any suggestions?

Thank you.

Shamly.

-


<?xml version="1.0" encoding="ISO-8859-1"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://mg.adityabirla.com/mg/wms/store_supps" targetNamespace="http://mg.adityabirla.com/mg/wms/store_supps">

<xsd:element name="MT_WMS_Store_Supps" type="DT_WMS_Store_Supps" />

<xsd:complexType name="DT_WMS_Store_Supps">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

1f3cf480f98411dcb83a0003ba0adbbd

</xsd:appinfo>

</xsd:annotation>

<xsd:sequence>

<xsd:element name="Statement">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

33dd8ee0ef5c11dcb812001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:complexType>

<xsd:sequence>

<xsd:element name="VIN_STG_STORER_RMS">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

33dd8ee1ef5c11dca724001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:complexType>

<xsd:sequence>

<xsd:element name="access" minOccurs="0" maxOccurs="unbounded">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

a31a45f0ef5c11dca305001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:complexType>

<xsd:sequence>

<xsd:element name="STORERKEY" minOccurs="0">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

a31a45f1ef5c11dcb3c3001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:minLength value="0" />

<xsd:maxLength value="15" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="TYPE" minOccurs="0">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

a31a45f2ef5c11dcc33e001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:minLength value="0" />

<xsd:maxLength value="30" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="WHSEID" minOccurs="0">

<xsd:annotation>

<xsd:appinfo source="http://sap.com/xi/TextID">

a31a45f3ef5c11dcabb7001d7df81104

</xsd:appinfo>

</xsd:annotation>

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:minLength value="0" />

<xsd:maxLength value="30" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

...and so on for many other fields.

Edited by: Shamly MM on Mar 24, 2008 10:27 AM

ranjit_deshmukh
Active Participant
0 Kudos

Hi,

I usually use the last Example (with place holder) as my target structure

in the following link: http://help.sap.com/saphelp_nw2004s/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm

just try if it helps to u

Ranjit

Former Member
0 Kudos

Hi Experts,

Thank you for your replies. The error has been removed.

I made the occurance of statement tag 1:unbounded along with access tag, which was already 1:unbounded, and mapped both with the incoming message.

The communication channel no longer shows error. Both Moni and communication channel monitoring shows processed successful messages.

But, the data has not got posted in the table. Any ideas as what may be the reason?

- Thanks.

Shamly.

ranjit_deshmukh
Active Participant
0 Kudos

Hi,

can you paste the "Audit log" that you get in the Message Display tool?

you know - you will get the "statement" execution detail in that.

that might give you a clue.

Ranjit

Former Member
0 Kudos

Hi Ranjit and experts ,

The following is the audit log. Does something strike you as what may be the reason for data not appearing in the oracle table?

Time Stamp Status Description

2008-03-24 17:15:27 Success Message successfully received by messaging system. Profile: XI URL: http://xidev:50000/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER

2008-03-24 17:15:27 Success Using connection JDBC_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.

2008-03-24 17:15:27 Success Message successfully put into the queue.

2008-03-24 17:15:27 Success The message was successfully retrieved from the receive queue.

2008-03-24 17:15:27 Success The message status set to DLNG.

2008-03-24 17:15:27 Success Delivering to channel: JDBC_RCV_StoreSupps

2008-03-24 17:15:27 Success Receiver JDBC adapter: processing started; QoS required: ExactlyOnce

2008-03-24 17:15:28 Success JDBC adapter receiver channel JDBC_RCV_StoreSupps: processing started; party MG_WMS, service StorerSupplier

2008-03-24 17:15:29 Success Database request processed successfully

2008-03-24 17:15:29 Success The message was successfully delivered to the application using connection JDBC_http://sap.com/xi/XI/System.

2008-03-24 17:15:29 Success The message status set to DLVD.

ranjit_deshmukh
Active Participant
0 Kudos

hmm... this seems a little bit tricky one.

1.can you see if you get the payload properly in the Message Content tab of Message Display Tool?

2.and so also- i think it is possible to check the log of the database system for the last transaction- e.g. XI uses XI.log/trace for storing the error/warning etc messages.

if this also doesnt help i am afaraid i cant help you further, sorry!

Ranjit

Former Member
0 Kudos

Yes sometimes you can not see data in table.

Check the Unicode is same for both XI and Oracle Data base.

Also you need to delpoy the Orace drivers of the repective Oracle DB.

Regards

Shankae

Former Member
0 Kudos

Hi,

where can i check for unicodes?

Former Member
0 Kudos

Hi experts,

The issue is solved. It was a mapping issue after all.

The root node of sender structure had to be named as 'row' only. The payload was not getting mapped otherwise. It was delivering an empty payload.

Thanks,

Shamly