cancel
Showing results for 
Search instead for 
Did you mean: 

Synchronous web service call PARSE_APPLICATION_DATA Error

Former Member
0 Kudos

Hi!

We have a problem calling a web service via ABAP proxy. We have an outbound proxy at SAP side and the target is a webservice. The call is synchronous.

We got the wsdl description from the web service developer. We imported it as external definition in the ESR and created service interfaces for both communicating systems. In both service interfaces we configured the same request and response messages. We use no mapping in the configuration:

Now I try to test the interface in SPROXY test tool. I create a valid request and send it and then I get the following error:

There seems to be a response which contains the field 'ReservierungNr':

When I call the webservice in SOAPui tool it works:

What could be the error here?

The only difference I see is that the response in SPROXY test tool has multiple namespaces "xmlns", "xmlns:p1" and "xmlns:p2".

Any hint is appreciated.

Thanks in advance

Accepted Solutions (1)

Accepted Solutions (1)

iaki_vila
Active Contributor
0 Kudos

Hi Stefan,

I think your PI response doesn't have the field ReservierungNr, if you take the response from monitoring and try to validate against the schema with an external tool like XMLSPY probably it will fail.

The solution is to modify in PI the minimum occurrences of that field to 0, because from one reason this value is not reaching, may be can be a previous mapping problem as well.

Regards.

Former Member
0 Kudos

How can I get the response? I don't see the message in monitoring as it is a synchronous call and the messages are not saved.

iaki_vila
Active Contributor
0 Kudos

Hi Stefan,

You can enable the monitoring for sync messages as well, if you are using ICO object check this link

Regards.

Former Member
0 Kudos

Hi Stefan,


Can you check the difference b/w successful message and failure message .

Then only you can identify the problem.

This failure happening for the same type  of  data or not ?

Regards

Ravinder

Former Member
0 Kudos

Thanks. I see the request and response messages in PI monitoring. Both have status "Successful":

So the interface works. But the response is not valid against the wsdl. I contacted the developer of the webservice now to fix this, maybe then the interface will work...

Answers (1)

Answers (1)

udo_martens
Active Contributor
0 Kudos

Hi Stefan,

the xml->abap transformation of the response is not working correctly. The ABAP program does not recognize the mandatory field "ReservierungNr".

I think the reason is that you created the outbound interface via an external definition - this is - depending from PI version and the external wsdl structure - not working properly. The namespace containing a lot of white spaces look suspicious. The easiest way to solve that - especially if you have a simple interface - is to build an own datatype / message type for the outbound interface (at least for the response) and create a simple 1:1 mapping. Of course you would need to regenerate the proxy.

/Udo

Former Member
0 Kudos

OK, I will try to create data types manually.

The namespaces do not contain whitespaces, I just effaced them with white boxes. This was a bit ambigious. Next time I will use black color.

Former Member
0 Kudos

I created the data types manually and get the same error.

But I found out another thing:

When I call the webservice via SOAPui and validate the response against the wsdl description, I get some error messages - the response does not seem to be valid:

The message matches the one from the SPROXY test tool shown above. Maybe there is an error with the namespaces?