on 02-09-2016 12:18 PM
Dear Experts,
I have a very urgent issue which needs to be fixed as soon as possible. I am calling an external webservice. Beforehand, the webservice needs a secure connection. So we configured HTTPS and SSL for the System and uploaded the Certificate in TA STRUST.
I have generated a proxy consumer in SE80 and also a logical port via SOAMANAGER.
When now testing the Service call in SM59, everything is fine. The connection test is successful (see below)
When now calling a method from this webservice (either via ABAP Coding or via SE80 --> Test Consumer Proxy) I get the following error: (SoapFaulCodeName: F410|SoapFaulCodeNameSpace: ...)
If any of you have ever faced the same or a similar issue please let me know. Any helpful answer will be rewarded.
Thanks and best regards,
Patrick
Patrick,
The first question I have is: have you confirmed that the service provider is fully functional outside of SAP? You can test this through a third-party tool like SoapUI. If you find that the service still doesn't work with SoapUI, then the problem most likely does not lie within SAP.
If the service is fully functional outside of SAP, I'd refer to the error message text. If Google Translate can be trusted to translate that German error message, I believe the message refers you to check the faultDetailString. This leads to another question though: where can this string be located?
The first option I would suggest is to examine the error logs in transaction SRT_UTIL. There's a chance that the details for the error you're experiencing are being logged there and you'll be able to view more information on the error.
The second option I suggest is to examine the exception objects either through the debugger in custom code you've written that uses this proxy or those that are viewable in SE80. You may already be doing this but I wanted to make sure this was covered.
One last suggestion I have is to check the trace in transaction SMICM. This may provide more information as well.
Hopefully one of these suggestions will provide more insight into the error and from there it'll be easier to solve.
Thanks,
Brian
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Brian!
Thanks for your outstanding reply!!
That was exactly what I have done today (Check with SoapUI). The problem was that this sounds like a SAP error message, moreover a system exception (or in detail a cx_soap exception) was thrown which was probably the most disturbing thing.
I have also checked SMICM and the trace log contains no errors so I tried, as mentioned before, a call of the method within SoapUI. Here I figured out that there is a compnent (node) in the return structure which is not available in SAP's generated Proxy Class (generated from WSDL) which is called <detail>. In there you can see that this error is produced by the external service system. But the big thing is that the so called "faultDetailstring" is saying that the user (this is basically a login functionality) which is used in the call's request is not authorized for using the webservice.
Again, thank you very much for your inspiration!
Probably - or lets say hopefully - your answer can help others with such problems as well!!
Have a nice day
regards
Patrick
Hi Patrick/Brain,
I am facing a similar issue. I am getting the same error message " SoapFaulCodeName: Forbidden |SoapFaulCodeNamespace: http://schemas.microsoft.com/2009/WebFault Forbidden".
I am trying to connect to 3rd party tool PC Miler with proxy structure provided by WSDL.
There are two mandatory fields which needs to be passed one of them is REPORT TYPE which is an internal table having two fields Fieldname (char 30 ) and value (char 1).
In PC miler website schema for the report type they are passing like this <v1:report type xsi:type="MileageReportType">.
We tried executing in the SOAPUI, it worked only when we used <v1:report type xsi:type="MileageReportType">.
I would like to know how to pass this for CHAR 1 this value. or how did you solve your issue which was not found in the sap structure?
I am in urgency and I really really appreciate your response.
Thanks,
Laxmi.S
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Here is the XML file which passed to SOAP UI and worked.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:alk="http://www.alk.com" xmlns:v1="http://pcmiler.alk.com/APIs/v1.0" xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<soapenv:Header>
<alk:AuthHeader>
<alk:Authorization> </alk:Authorization>
</alk:AuthHeader>
</soapenv:Header>
<soapenv:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<v1:GetReports xmlns="http://pcmiler.alk.com/APIs/v1.0">
<!--Optional:-->
<v1:Request>
<!--Optional:-->
<v1:Header>
<!--Optional:-->
<v1:DataVersion>current</v1:DataVersion>
<!--Optional:-->
<v1:RequestType>GetReports</v1:RequestType>
</v1:Header>
<!--Optional:-->
<v1:Body>
<!--Optional:-->
<v1:ReportRoutes>
<!--Zero or more repetitions:-->
<v1:ReportRoute>
<v1:Stops>
<!--Zero or more repetitions:-->
<v1:StopLocation>
<v1:Coords>
<!--Optional:-->
<v1:Lat>39.942892</v1:Lat>
<!--Optional:-->
<v1:Lon>-75.173297</v1:Lon>
</v1:Coords>
</v1:StopLocation>
<v1:StopLocation>
<v1:Coords>
<!--Optional:-->
<v1:Lat>38.942892</v1:Lat>
<!--Optional:-->
<v1:Lon>-74.173297</v1:Lon>
</v1:Coords>
</v1:StopLocation>
</v1:Stops>
<!--Optional:-->
<v1:ReportTypes>
<v1:ReportType xsi:type="MileageReportType" />
</v1:ReportTypes>
</v1:ReportRoute>
</v1:ReportRoutes>
</v1:Body>
</v1:Request>
</v1:GetReports>
</soapenv:Body>
</soapenv:Envelope>
Hi Laxmi,
I think there is probably a issue within the WSDL. Try using Report RSSIDL_DESERIALIZE_DEMO via SE38 and pass the WSDL. Check if there are any inconsitencies.
If not, try testing your Service via SE80 and pass this request in the XML Editor (without the soap tag).
I think that you will get the error there again. Then please ask someone of your SAP Basis team to turn on a sniffer or similar. Then call it again and check the log files.
If you do NOT get the error again there is an error within the proxy class.
Regards Patrick
Hi Patrick,
You are right. There might be an issue with WSDL only . Fields are missing in the structure generated by the PROXY from WSDL.
Now, I need to know the way to modify either proxy or WSDL to add those fields for the REPORT TYPE . Can you please help me how to do this?
I have ran the program RSSIDL_DESERIALIZE_DEMO and provided the WSDL with all possiblities like with soap service and with out soap service and every time I am getting an error message below.
Really appreciate your help on this.
Thanks,
Laxmi.Suryadevara
hi Laxmi,
please check the following link:
try if that guide solves your issue. if not please let me know.
reward if helpful,
thank you
regards
Patrick
Hi Laxmi,
I would suggest to make the changes within the WSDL and uplaod it to the SAP System again. I checked the description of your error and it seems that there is something wrong with the WSDL header.
Please look at Generation of Consumer Proxy fails - ABAP Connectivity - SCN Wiki
This probably solves your issue,
Regards Patrick
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.