cancel
Showing results for 
Search instead for 
Did you mean: 

Idoc to Webservice synchronous response error

venkatasap
Participant
0 Kudos

Hi SapAll.

I iam getting an error with the Response when PI is triggering the Idoc to Webservice synchronous Interface . the issue is with the Response message .

it is failing in the Integration engine saying ""MAPPING">EXCEPTION_DURING_EXECUTE"

IllegalInstanceExcepti</SAP:P2><SAP:P3>on: Cannot create target element /ns0:Envelope.

Values missing in queue context. Target XSD require.

<SAP:Stack>Runtime exception occurred during application mapping com/sap/xi/tf/_MM_PersonnelDetails_RESP_; com.sap.aii.mappingtool.tf7.IllegalInstanceException: Cannot create target element /ns0:Envelope. Values missing in queue context. Target XSD require~ </SAP:Stack>

when I try to test the message in message mapping editor. all the nodes in the source message data are showing in Red Icon color.

can any one help me in this.

Regards.

Jagdish.

Accepted Solutions (0)

Answers (5)

Answers (5)

pvishnuvardan_reddy
Active Contributor
0 Kudos

Hi Jagdish,

Just to add here, pls check whether the webservice is sending the response with envelope or with out the envelope, accordingly adjust the response mapping part.

venkatasap
Participant
0 Kudos

Hi Vishnu.

PI is getting the response with envelope having header & body.it is because of PI Calling webservice using SSL & https.

the response message with the header envelope is as below. I have not included the body here.


XML Validation Inbound Channel Response -->


soapenv:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">


<env:Header xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">


<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">urn:b1f66ceb-681f-11e5-b672-005056a34094</wsa:MessageID>


<wsa:ReplyTo xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">


<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>


<wsa:ReferenceParameters>


<instra:tracking.ecid xmlns:instra="http://xmlns.oracle.com/sca/tracking/1.0">b7647c42-8af3-4d09-b9b8-8cf801dbb837-0001177b</instra:tracking.ecid>


<instra:tracking.FlowEventId xmlns:instra="http://xmlns.oracle.com/sca/tracking/1.0">1633339</instra:tracking.FlowEventId>


<instra:tracking.FlowId xmlns:instra="http://xmlns.oracle.com/sca/tracking/1.0">290171</instra:tracking.FlowId>


<instra:tracking.CorrelationFlowId xmlns:instra="http://xmlns.oracle.com/sca/tracking/1.0">0000L0YkK_Z52jtawdfd6G1M2tC50000PJ</instra:tracking.CorrelationFlowId>


</wsa:ReferenceParameters>


</wsa:ReplyTo>


<wsa:FaultTo xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">


<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>


</wsa:FaultTo>


</env:Header>

Regards.

Jagdish.


pvishnuvardan_reddy
Active Contributor
0 Kudos

Hi Jagdish,

Then the issue might be here, since you have defined the response structure for the body itself.

You can go for xslt mapping or java mapping for removing the header information from the payload.

You can just write a xslt code in either tools like stylus studio etc or even notepad. And you can find numerous free tools for testing the code online.

XSLT Mapping in SAP PI – An Introduction and How to Guide

XSLT Mapping in SAP PI – A Simple Example

venkatasap
Participant
0 Kudos

Hi .

I just got another requirement that when PI get the response from Web service .PI need to send the same response to HR Function module.

I have created a sender agreement,CC(SOAP-HTTPS),recv detmnaton, Interface detmnaton, recv agrmnt. Recv cc (RFC).

when SAP sends the IDOC , it come to PI & processed successfully to web service, get response back from webservice as a result of BPM .but it is not triggering my another name space interface to send the same response to HR.

can any one help me in this.

Regards.

Jagdish

venkatasap
Participant
0 Kudos

Hi SapAll.

is my Question not clear.

trying to make it clear in addition to above explanation :

I have created BPM Start-Rec-Send-Stop for PI to get IDOC from SAP & send it to web services synchronously. but I have created mapping, Service Interface for sending the same response which PI get from web service to SAP. but I have not used BPM for this.


when I tested the Interface I can see the messages in moni related to IDOC to Web service, Web service to PI. but I don't see the messages related to PI to SAP.

can any one help me in this.

Regards.

Jagdish.

iaki_vila
Active Contributor
0 Kudos

Hi Jagdish,

Just to add, if the response contains an exception this issue could happen as well. Try to take the payload and to check the call with a third like SOAPui. Also, if the answer has been generated, you can take the payload and to try to test in message mapping, to check easier what error could be.

Regards.

gagandeep_batra
Active Contributor
0 Kudos

Hi Venkat,

As other pepole also say check the XML response structure I have one more doubt that you are saying Idoc to Webservice Sync scenario are you using Request Response bean if yes then check the configuration for that also

Regards

GB

Harish
Active Contributor
0 Kudos

Hi Jagdish,

Please check the XML prefix. your XSD/structure is expecting some other prefix and XML is having different prefix.

regards,

Harish

former_member186851
Active Contributor
0 Kudos

Hello Jagdish,

Its because of wrong payload.

The Input payload is not matching the source structure XML