cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping error in XI

Former Member
0 Kudos

Hi Gurus,

I am getting mapping error at runtime. Im getiing this error message'com.sap.engine.lib.xml.parser.ParserException: XMLParser : #0 not allowed in Character data sections(:main:, row:1, col:301)'. When i testing in the design level its executed successfully. That is i have copied the entire xml message and paste it in the test tap of the integration directory. when i execute it , it run successfully. Pl help out to resolve this problem.

Regards,

Ramalakshmi.G

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

It might be possible at the time of testing (using testing tool in IR) the XML workd fine.

But at run time it detects the special characters and thrown an error. Please check weather the input file has any special char>

thanks

farooq.

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

This Parser Exception, In mapping time PI unable to parse this file.

Once you pick the file use Transfer parameter (Adapter configuration) as Text.

Thanks,

Boopathi

former_member518917
Participant
0 Kudos

This error is because of any special character in ur input payload.XI uses UTF-8 encoding, so if any specials character comes it thorows error at runtime. you can change endcoding to ISO-8859-1 in you sender communication channel.

Former Member
0 Kudos

That means xml that u r sending is not same as u designed.

Copy the orginal xml that u r sending in the test tab of u r "INTEGRATION REPOSITORY" MM and test.

or copy the xml from test tab and pass to u r scenario it wud work.

thx

rgds

srini

Former Member
0 Kudos

Hi venkat

Thanks for your reply. I have copied the original xml message in the TEST TAB of Message Mapping in the INTEGRATION REPOSITORY. Its executed fine when i execute it.

Even when i restarted manually still that error exist in the SXI_MONI. Wat to do.

Regards,

Ramalakshmi.G

Former Member
0 Kudos

Kindly paste u r Aduit log

from CC Monitoring from RWB

Srini

Former Member
0 Kudos

Hi,

This s the audit log ..

2008-07-28 16:29:15 Success

The message was successfully retrieved from the receive queue.

2008-07-28 16:29:15 Success

The message status set to DLNG.

2008-07-28 16:29:15 Success

Delivering to channel: CC_WARRANTY_receiver

2008-07-28 16:29:15 Success

MP: Entering module processor

2008-07-28 16:29:15 Success

MP: Processing local module localejbs/CallSapAdapter

2008-07-28 16:29:15 Success

Receiver JDBC adapter: processing started; QoS required: ExactlyOnce

2008-07-28 16:29:21 Error

JDBC message processing failed; reason Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level

2008-07-28 16:29:21 Error

MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level

2008-07-28 16:29:21 Error

Exception caught by adapter framework: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level

2008-07-28 16:29:21 Error

Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level.

Last four lines descripes the error

Regards,

Ramalakshmi.G

prateek
Active Contributor
0 Kudos

The audit log error u pasted is different than the mapping problem u mentioned earlier. For this audit log related error:

In PI 7.0, SP 12 onwards, u have option of setting the concurrency level (default 1) in the receiver communication channel. Try increasing it to something less than 5.

Regards,

Prateek

Former Member
0 Kudos

Hi,

Where can i speicfy this concurrency level in Receiver communication channel. There is no parameter thr to mention... kindly guid me...

Regards,

Ramalakshmi.G

prateek
Active Contributor
0 Kudos

What is ur XI/PI SP level?

See this

http://help.sap.com/saphelp_nw70/helpdata/EN/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm

Under Processing Tab Page

Regards,

Prateek

Former Member
0 Kudos

Hi,

What is XI/PI SP level... In my server ST PI 6 is there.

There is no such Processing tab page available in the receiver communication channel. So i couldnt set the concurrency level. Is any other possibility thr..

Regards,

Ramalakshmi.G

Former Member
0 Kudos

Hi,

What type of scenario are you trying to execute. This mapping error may be due to the data type mentioned. Because I think you are dealing with the JDBC scenario, then the data type and the no. of characters defined in database shd match the one with the data you are providing else it will thru' the error.

Reward Points

Regards,

Nithiyanandam

Former Member
0 Kudos

Please refrain from asking "rewards points" in your reply.

Thanks

Farooq

Former Member
0 Kudos

Hi,

The error in the RWB is corrected. That i have resent those error messages. Now it is successfully delivered. Thnaks for your replies.

But the error messages in the RWB and the SXMB_MONI are different. Im getting mapping error in XI server. So that error messages are not yet avaliable in RWB. So i could not able to solve the mapping problem. It shows some #0 is not allowed in the input message. But it describes as the error in the first row.. I ll paste my payload here. Kindly tell me anythink error in this message.

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

- <rfc:ZXI_WARRANTY_INFREC_SEND xmlns:rfc="urn:sap-com:document:sap:rfc:functions">

<WPADTE />

<WPATME />

<WPCUR>EUR</WPCUR>

<WPDSC>CYL ASSY, MAIN</WPDSC>

<WPIDTE />

<WPITME />

<WPPDTE />

<WPPLT>1046</WPPLT>

<WPPRC>200</WPPRC>

<WPPRD></WPPRD>

<WPPTME />

<WPSEQ>200807288359</WPSEQ>

<WPVND>0000527902</WPVND>

</rfc:ZXI_WARRANTY_INFREC_SEND>

All fields are one to one mapping. Only the field WPDSC is mapped via user defined function. That fuction checks the length of the input string, if it s more then 30 then pass only the 0 to 30 character to the output field. So wr can we the exact problem. The type of that particular field is 'string'.

Regards,

Ramalakshmi.G

Former Member
0 Kudos

Hi

In SXMB_MONI

Click on Error and see what is the message

rgds

srini

prateek
Active Contributor
0 Kudos

Please provide ur udf code. There might be some prob with that.

Regards,

Prateek

Former Member
0 Kudos

wat is udf code..could u giv full form...

Regards,

Ramalakshmi.G

Former Member
0 Kudos

Hi

UDF - User Defined Function

u said u wrote coding for checking string length JAVA

Cut and paste it

rgds

srini

Former Member
0 Kudos

oh..

this s the code

public String string30(String string,Container container){

if (string.length()>30) return string.substring(0,30);

return string;

}