cancel
Showing results for 
Search instead for 
Did you mean: 

Java Spring Boot Application, Consuming SOAP services from S/4Hana On Premise

osaid920
Explorer
0 Kudos
16,603

Hello Experts

I am developing a spring boot application that integrates with S/4Hana on premise

I am already done with the basic steps of enabling the cloud connector and adding the connectivity destination to my ERP, the application is up and and running on the cloud foundry platform and I am already calling the OData API services

how can I call the SOAP services using the SAP Java Cloud SDK ?!

View Entire Topic
gregorw
SAP Mentor
SAP Mentor
osaid920
Explorer
0 Kudos

Thank you for the fast response Mr Wolf

The SoapQuery class is not in the com.sap.cloud.sdk.s4hana.connectivity.soap package any more

Was it replaced by the SoapRequest class ? Is there any recent and updated blog that explains the concept ?

matthiaskuhr
Product and Topic Expert
Product and Topic Expert

SoapQuery has been renamed to SoapRequest but remained otherwise unchanged. Other than that I'd hope that this blog post is still somewhat up to date. Any changes (like the class renaming) would likely be mentioned here or in the release notes here. Other than that I am currently not aware of more detailed documentation, sorry.

osaid920
Explorer
0 Kudos

Thank you for the response Mr Kuhr

I followed the steps carefully and figured out one thing: apache axis 2 kernel has to be version 1.7.9 other than that it won't work 🙂

Now I got to this point => "Transport error: 403 Error: HTTP/1.1 403 Forbidden" and figured out I have to do something from the ERP configurations, any tips on what to do ? I'm still new to the whole integration thing

matthiaskuhr
Product and Topic Expert
Product and Topic Expert

Okay, so in case of a 403 I'd double check the permissions of the user. Also, make sure you are targeting the correct system by making sure the sap client is correct. Also double check that the path is allowed in the Cloud Connector.

You can also enable debug logs, specifically for org.apache.http.wire. That will print out more information about e.g. the response headers, where you should see the name of the system that answered your request.

If none of this helps I think you would have to check the error logs on server side. Naturally, to not give any information to a potential attacker, 4xx errors like 403 contain little information.

osaid920
Explorer
0 Kudos

Thank you so much both of you

I had to enable the services with basic authentication using the transaction SOAMANAGER and now it works