0

While trying to run a website with SSO and auto-login feature using ADFS and NTLM on JavaFX WebView I am unable to load it as the application pop-up shows a blank screen.

This happens when I try to run the program on openJDK-11. When I run the same program with Oracle's Java8 it works just fine, and I want it to work the same way with openJDK.

What I noticed while trying to debug using com.mohamnag.javafx-webview-debugger v0.0.2 is that when I ran the application with openJDK-11, the network calls stopped after a GET request was made to NTLM using client id, session id and time as payload. It returns with 401 Unauthorized and the network calls stop there. When I run the same app with Oracle Java8, the same NTLM call mentioned above is made and it returns with the same 401 Unauthorized message. But, right after that other network calls are made which loads the webpage successfully.

I tried openJDK-11 with openJFX v19 with runtime build 11 and v13.0.2 with runtime build 1, but the issue is reproduced in both the cases. Java8, v1.8.0_181, has its own javafx so it must be using that.

Please help me find what is different in Java8 that is making it work and how can I replicate the same for openJDK-11.

Puneet
  • 1
  • Perhaps try [disabling the HTTP/2 client](https://bugs.openjdk.org/browse/JDK-8242077) `java -Dcom.sun.webkit.useHTTP2Loader=false`. – jewelsea Dec 06 '22 at 19:52
  • @jewelsea I tried it by adding it to VM Options in IntelliJ but it did not work – Puneet Dec 07 '22 at 09:04
  • Oh well, was worth a try as that was the major change in network communication in later JavaFX versions. I have no other ideas for you other than to stick with the obsolete Java 8 if that is what works for you. You could also try the LTS releases of JDK 11 and JavaFX 11 rather than 19, that predates the use of the network client in WebView, do it may work or may not. – jewelsea Dec 07 '22 at 09:59
  • I see you tagged this gluon. If you are using gluon stuff maybe contact them directly to request support. – jewelsea Dec 07 '22 at 10:06
  • If you are using ssl/https check [if you need to require cryptoki](https://stackoverflow.com/questions/74628587/beryx-badass-runtime-tlsv1-3-javax-net-ssl-sslprotocolexception-received-close/74649649#74649649). That might depend on how you package the app though (I don’t know what you are doing exactly). – jewelsea Dec 07 '22 at 10:08
  • Yeah I'll try some stuff and see if anything works, thanks @jewelsea – Puneet Dec 07 '22 at 16:21

0 Answers0