cancel
Showing results for 
Search instead for 
Did you mean: 

File-XI-JDBC error

Former Member
0 Kudos

Hello XI Gurus,

Thanks for all the help so far. Right now I am in the process of doing file to jdbc scenario. I am following this link: /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30

<b>I am getting the follwoing error in the JDBC adapter monitoring:</b>

Receiver Adapter v2606 for Party '', Service 'JDBC_Service':

Configured at 16:31:32 2006-09-08

Last message processing started 16:47:07 2006-09-08, Error: TransformException error in xml processor class, rollback:

Error processing request in sax parser: No 'action' attribute found in XML document (attribute "action" missing or wrong XML structure)

SXMB_Moni says that the message has been processed succesfully.

***********************************************

Here are my data:

***********************************************

<b>Here is my Source XML(XI is picks this xml file thru file adapter):</b>

<p2:data_filesender_MT xmlns:p2="http://filetojdbc">

<EMPID>JDK</EMPID>

<EMPNAME>JohnDoe</EMPNAME>

<EMPAGE>3</EMPAGE>

<FLAG>Yes</FLAG>

</p2:data_filesender_MT>

<b>Here is my target XML (in the message mapping test window)</b>

<p2:data_jdbcreceiver_MT xmlns:p2="http://filetojdbc">

<STATEMENTNAME>

<Table1>

<action>INSERT</action>

<TABLE>Table1</TABLE>

<access>

<EMPID>JDK</EMPID>

<EMPNAME>JohnDoe</EMPNAME>

<EMPAGE>3</EMPAGE>

<FLAG>Yes</FLAG>

</access>

</Table1>

</STATEMENTNAME>

</p2:data_jdbcreceiver_MT>

Please let me know what I am doing wrong:

Regards,

N.S

Accepted Solutions (1)

Accepted Solutions (1)

bhavesh_kantilal
Active Contributor
0 Kudos

Hi,

You have created the ACTION as an element under TABLE. <b>ACTION should be the ATTRIBUTE of the elements TABLE.</b>

<i><p2:data_jdbcreceiver_MT xmlns:p2="http://filetojdbc">

<STATEMENTNAME>

<Table1 <b>action ="INSERT"</b>>

<TABLE>Table1</TABLE>

<access>

<EMPID>JDK</EMPID>

<EMPNAME>JohnDoe</EMPNAME>

<EMPAGE>3</EMPAGE>

<FLAG>Yes</FLAG>

</access>

</Table1>

</STATEMENTNAME>

</p2:data_jdbcreceiver_MT></i>

Edit the datatype and make ACTION an attribute and then use the constant INSERT.

Regards,

Bhavesh

Answers (3)

Answers (3)

moorthy
Active Contributor
0 Kudos

Hi Swamy,

As Bhavesh mentioned check the mapped xml message i.e JDBC message structure. By seeing the your post, you mentioned action as a element. It should be attribute.

<p2:data_jdbcreceiver_MT xmlns:p2="http://filetojdbc">

<STATEMENTNAME>

<Table1 action = INSERT</Table1>

<TABLE>Table1</TABLE>

<access>

<EMPID>JDK</EMPID>

<EMPNAME>JohnDoe</EMPNAME>

<EMPAGE>3</EMPAGE>

<FLAG>Yes</FLAG>

</access>

</Table1>

</STATEMENTNAME>

</p2:data_jdbcreceiver_MT>

In this Table1 should be your Table Name.

To know more

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

btw what is the error in the RWB->message monitoring->Message DisplaY tool . also check JDBC communication channel in the Adapter monitoring

Regards,

Moorthy

Former Member
0 Kudos

Thanks Moorthy. That was the problem. It works now.

What's the difference between element and an attribute.

Regards,

N.S.

Former Member
0 Kudos

Hi...

1) Check Ur Target JDBC structure. Action must be category type <b>“Attribute”</b>. If it is correctly defined.

2) Declare the JDBC table name as constant variable & Map the <i><b>statement name</b></i> to the actual table name of JDBC.

this may solve Ur problem.

From,

Yallabandi.

Former Member
0 Kudos

It works when i do step by step as the blog exactly

In SXMB_MONI, it shows that message sent successfully,

but in fact there maybe something wrong when executed in database

bhavesh_kantilal
Active Contributor
0 Kudos

Leo Luo,

Can you confrim that ACTION is an attribute of the TABLE?

ALso, did you look into the log in the Adapter Montioring?

Regards,

Bhavesh