cancel
Showing results for 
Search instead for 
Did you mean: 

Strange issue in Proxy to SOAP Synchronous scenario

former_member211899
Participant
0 Kudos

Hi Experts,

Good day !!

I'm facing a strange issue while testing a Proxy to SOAP synchronous scenario.

Case 1: While testing with the input payload via the Runtime Workbench test tool in PI, the XML gets processed perfectly to the third party Webservice and a Response is received without an issue.

Case 2: Whereas, when the interface is triggered from the Sender ECC system, though the request comes into PI and the outbound mapping is executed properly, the response is not received. Actually, there is no payload at all in the Response message.

I have checked the RFC connection between the ECC and the PI system and it seems ok.

One thing I noted is that in Case 1, the Header Trace of the Response payload corresponds to the remote host and IP address of the PI Integration engine itself whereas in Case 2, the remote host corresponds to the URL of the PI Integration engine but the IP address corresponds to that of the sender ECC system.

Can you kindly provide your thoughts on this ?

Regards,

Krish

Accepted Solutions (0)

Answers (7)

Answers (7)

former_member190293
Active Contributor
0 Kudos

Hi Krishna!

It's very strange issue. Looks like you receive Http 200 empty response from your SOAP channel. Just to be sure: didn't you accidentaly set EO QoS mode in receiver SOAP adapter?

And another question: don't you use Axis in your SOAP receiver adapter?

Regards, Evgeniy.

adnanmaqbool
Contributor
0 Kudos

Hi Kirshna

Are you able to fine any solution. I am also facing exactly same issue.

former_member211899
Participant
0 Kudos

Hi Inaki and Ryan,

I have compared the two payload XMLs (both Inbound and Outbound) and they seem to have no difference at all (namespace, soap envelope all looks identical).

Also I have built the SOAP envelope in the XSD itself and in the SOAP Receiver Adapter the "Do Not use SOAP Envelope" box is CHECKED.

Could there be some issue with the port numbers as well ?

Regards,

Krish

iaki_vila
Active Contributor
0 Kudos

Hi Krishna,

I dont think the problem can be in the ports. Have you checked the SOAP:BODY response?, may be you can find any extra information about any error. Do you have only one configuration for the two cases?

Regards.

Ryan-Crosby
Active Contributor
0 Kudos

Hi Krishna,

What happens if you try to process the requests using soapUI?  Do you get the same result as before?

Regards,

Ryan Crosby

former_member211899
Participant
0 Kudos

Hi Ryan,

It's a receiver SOAP scenario so I am not sure how to use SOAPUI for testing.

Can you kindly guide me ?

Regards,

Krish

Ryan-Crosby
Active Contributor
0 Kudos

Hi Krishna,

Since you are calling a third party web service then you should be able to import a WSDL for that service and run it from soapUI.  If you import the WSDL then you can copy/paste the two versions of your request to test them out.  It works the same as if you are supplying a WSDL for a third party to consume except in this case you would be cutting PI out of the middle to test the request you are sending to the system.

Regards,

Ryan Crosby

former_member211899
Participant
0 Kudos

Hi Ryan,

The endpoint URL was changed to a HTTPS so we were busy setting up SSL Certificate and testing.

For the new URL also, the same issue persists...i.e When tested from the Integration engine of PI we receive a valid response, but from the ECC the same error with an empty response.

Also, testing from SOAPUI and XMLSpy is successful, no issues here.

Regards,

Krish

Ryan-Crosby
Active Contributor
0 Kudos

Hi Krishna,

Can you attach a sample request from soapUI vs. the sample request coming from ECC then so they can be checked for differences that might cause that issue?

Regards,
Ryan Crosby

former_member211899
Participant
0 Kudos

Hi Ryan,

I'm afraid attaching the payloads might not be possible due to security reasons.

But as I mentioned earlier, what I do is the following.

1. Ask the functional personnel to trigger the request message from the ECC

2. The request message is successful and is passed to the SOAP Receiver but the response message fails in PI with "Root element expected" error since the response is empty.

3.I copy the Request message's payload and paste it on to the Integration Engine of XI and test.

4, The message succeeds in PI with a valid response from the Server.

5. The same procedure while testing in XMLSpy / SOAPUI.

Regards,

Krish

Ryan-Crosby
Active Contributor
0 Kudos

Hi Krisha,

Aside from potential authentication issues from your ECC system the only likely cause would be payload differences based on the source of the message.  It would be hard to know if this is the case without actually seeing a sample payload from one source where it is working vs. another source where it is not working.

Regards,

Ryan Crosby

former_member211899
Participant
0 Kudos

Thanks for your replies Inaki and Ryan,

I shall compare the two payloads and comeback with the results soon

Regards,

Krish

iaki_vila
Active Contributor
0 Kudos

Hi Krishna,

I've just remember a strange issue that one day i had with XI 3.0 and a SOAP receiver request. The standard SOAP call failed when the proxy interpreted it, the only solution that i found was to use Do Not Use SOAP envelope check and to wrap the SOAP call via XSL mapping in the request and later to ride off it in the response.

Regards.

iaki_vila
Active Contributor
0 Kudos

Hi Krishna,

Have you compared in the monitoring the request from RWB against the request from the ECC?.  May be in the SOAP request call there is something different, a namespace name for example, in that way it could be a different response from the SOAP receiver.

Regards.

Ryan-Crosby
Active Contributor
0 Kudos

Hi Krishna,

I would say the same thing for the request comparison because I have had occurrences in the past of calling external web services fail for something as simple as a namespace issue or also that the web service is expecting the usage of elementFormDefault="qualified" whereas the default for anything built in PI is elementFormDefault"unqualified".

Regards,

Ryan Crosby

former_member184720
Active Contributor
0 Kudos

Hi Krishna -


Actually, there is no payload at all in the Response message.


>>> Is it the same message that is being triggered from ECC proxy and PI Runtime work bench? If not process the message that is coming out ECC from PI RWB and see if you are getting the response..

former_member211899
Participant
0 Kudos

Hi Hareesh,

Thanks for your reply.

Yes both the payloads are one and the same. That is what baffles me

Regards,

Krish

Former Member
0 Kudos

Hello,

What's the status of ur soap receiver channel?

Thanks

Amit Srivastava

former_member184720
Active Contributor
0 Kudos

Hi Krishna - When you say the response message is empty.. Are you checking in ECC or PI?

or in both the places it is empty?

former_member211899
Participant
0 Kudos

Hi Amit,

Thanks for your reply.

The Receiver SOAP Channel is green and is in "running" status. No issues here

Regards,

Krish

former_member211899
Participant
0 Kudos

Hi Hareesh,

Its not "empty" but the "Payload" itself does not exist. Please see the below screenshot.

Since there is no payload, the response mapping fails with error as shown below.

Regards,

Krish

Former Member
0 Kudos

Hello,

What i would suggest u to remove ur response message mapping from OM and then test ur scenario? So that u would get to know if it's really empty or not (ur screenshot suggest that empty response coming but just to cross verify it i am suggesting this)

In addition to that it seems that ur WS is returning exception due to incorrect data?

Thanks

Amit Srivastava