cancel
Showing results for 
Search instead for 
Did you mean: 

Communicate from SAP Public Cloud to Java Application (Jco Server) via WebSocketRFC Problem

andrzej_rosinski
Explorer
0 Kudos
319

Hello everybody,

i am having a problem while trying to call a outbound service from the SAP Public Cloud to a external JCo WebSocketRFC Server instance. 

My JCo WebSocketRFC server is running on a VM that is exposed to the internet on port 8080.

In the SAP Public Cloud i have already configured the communication system where i have just entered the "Host Name" of my VM and set the Authentification Method in the "Users for Outbound Communication" to None since i do not need the authentification for the tests.

andrzej_rosinski_0-1738069096899.png

I have also configured a communication agreement for the communication system

andrzej_rosinski_1-1738069224536.png

On the Eclipse ADT side i have a communication scenario that looks like this:

andrzej_rosinski_2-1738069368158.png

with the corresponding outbound service

andrzej_rosinski_3-1738069410114.png

 

Now, when i try to call the outbound service from SAP Public Cloud ABAP with the corresponding code:

andrzej_rosinski_6-1738070185661.png

 

andrzej_rosinski_5-1738069869362.png

 

like described by SAP i get the following error

andrzej_rosinski_7-1738070655154.png

Anyone has an idea why this fails? Dis anyone made a scenario like this before? - to communicate from the SAP Public Cloud to a external server program? I have only found tutorials how to communicate with on prem systems.

The JcoTrace for the server says the following (i have replaced the real IP with "hostname" in the screenshot)

andrzej_rosinski_1-1738137908962.png

andrzej_rosinski_2-1738138048772.png

andrzej_rosinski_4-1738138325596.png

andrzej_rosinski_5-1738138383475.png

obviously the handshake cannot be completed. I am trying to connect to the server withot any authentification (i have set the communication scenario to "Unauthentifiacted" and i have startet the Jco server without any p12 files - jco.server.use_tls=0).

Server props:

andrzej_rosinski_6-1738138858738.png

@MarkusTolksdorf @simon_luser Thanks for your reply, i have added the Trace from the Jco. Could the problem be the missing authorisation? 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

View Entire Topic
simon_luser
Product and Topic Expert
Product and Topic Expert

The problem is currently jco.server.use_tls=0, this is actually not supported from ABAP cloud clients, they will always communicate via TLS, however your current JCo server expects plain WebSocket communication now with this setting. For testing purposes you can create and setup a simple p12 file containing an own server certificate which ABAP trusts.

andrzej_rosinski
Explorer
0 Kudos
Yes 🙂 that was the problem. So TLS is obligatory in this scenario ane one cannot daectivate it with the parameter jco.server.use_tls=0. I have created a empty p12 keystore and also set the jco.server.wsport to 443 (i didn't worked on 8080) Thank you very much!
simon_luser
Product and Topic Expert
Product and Topic Expert
0 Kudos
This property will only deactivate it on JCo side, but not on the ABAP part 😉