cancel
Showing results for 
Search instead for 
Did you mean: 

Runtime exception error in mapping request [Runtime Exception error in map]

Former Member
0 Kudos

Hi,

I am getting a runtime exception error in mapping request from sender to receiver

Actually its just one to one mapping between an element of sender and receiver. When I test the payload acquired from SXMB_MONI I get the following error

Cannot produce target element /ns1:getABC/ns1:clientId. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd.

The payload is as follows

- <ABCLookupRequest xmlns="http://abc.com/MM/MDM/ABC" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

- <ABCSearch>

<ABCNumber />

<ABCType />

- <ABCDescription>

<m0:Sign xmlns:m0="http://abc.com/GDT" />

<m1:Option xmlns:m1="http://abc.com/GDT" />

<m2:Low xmlns:m2="http://abc.com/GDT" />

<m3:High xmlns:m3="http://abc.com/GDT" />

</ABCDescription>

<LanguageKey />

<Plant>1</Plant>

- <StorageLocation>

<m4:Sign xmlns:m4="http://abc.com/GDT" />

<m5:Option xmlns:m5="http://abc.com/GDT" />

<m6:Low xmlns:m6="http://abc.com/GDT" />

<m7:High xmlns:m7="http://abc.com/GDT" />

</StorageLocation>

</ABCSearch>

</ABClLookupRequest>

Please help me with the same as to what could be the error and how can I debug it

Thanking you all in anticipation.

Regards,

Kiran

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Sak,

Manually you enter values and copy the payload to a notepad. Check this payload with the payload from SXMB_MONI. You should find some difference somewhere in the payload. This is what it is complaining.

Regards,

---Satish

Former Member
0 Kudos

Hi Satish,

I believe the problem is similar to the one faced in the following thread (wrong namespace in request)

I wanted to know how should I go about it what should I edit and debug

Please help me with the same.

Thanks.

Regards,

Kiran

Former Member
0 Kudos

Sak,

Check this weblog:

/people/sameer.shadab/blog/2005/12/05/how-to-remove-namespaces-in-mapping--xi

Also check michals question 12 in integration engine section:

/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions

Regards,

---Satish

Former Member
0 Kudos

Thanks Satish & Michal,

The runtime exception error has been resolved. I could not remove the namespace from external definitions.Thanks for your valuable assistance. Now I am getting the following error.

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

- <!-- Aufruf eines Adapters

-->

- <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: invalid content type for SOAP: TEXT/HTML</SAP:AdditionalText>

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack />

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

</SAP:Error>

I tried the solution suggested by Step by Stefan

<b>Per default the SOAP adapter sends the SOAP message the content type text/xml. So you need not do anything special.

When you check "Do not use SOAP envelope", the default contnet type is application/xml. You can change the content type like this: Go to the SOAP receiver communication channel module tab. Add the module "localejbs/AF_Modules/MessageTransformBean" before the standard module. Add the parameter name Transform.ContentType and value text/xml</b>

I wanted to know based on the error should I change the content type to text/html or text/xml in either case its giving the same error.

I also tried if there was any problem with the URL as suggested by Ricardo Quintino

<b>The address in soap address location from main.wsdl was wrong! I tried opening this address in a web browser and the page that I see is info with the webservice published and a link to the webservice wsdl. Using this wsdl link in my receiver soap adapter works!!!

So, the web service address that we must type in target URL of receiver soap adapter is the address to the WSDL. To be sure types this address in a browser and you must see a WSDL code of the webservice that you want invoke.

Tanks a lot for all 🐵

Cheers,

Ricardo.</b>

But it still gives the same error.

Please help me with the same.

Regards,

Kiran

Answers (1)

Answers (1)

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>> /ns1:getABC/ns1:clientId

probably mapping cannot produce higher node correctly

(and this element is mandatory)

Regards,

michal

Former Member
0 Kudos

Hi Michal,

Thanks for your prompt response.What should I do in this case? I tried initializing(mapping) it to a constant but it still gives the same error. What should I map the higher node to ?? Even if I do not map it then also it is green. The issue is bothring me for 3 days I tried checking evrything else and again I am stuck at the same error.

Regards,

Kiran

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

ask any XI consutant which can log on to your XI to check it

it will take max 5 minutes at most to resolve

Regards,

michal