on 08-25-2014 9:26 AM
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
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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?
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.