使用 JavaFX WebView 时未加载 iframe
Iframes not loaded when using JavaFX WebView
我正在使用 JavaFX WebView 加载网站。此网站正在使用 iframe。
它在经典浏览器上运行良好,但是当我使用 JavaFX WebView 显示页面时,框架是空的。
我试图通过 Java 代码以编程方式显示 iframe 的内容(根据此:How to get by javafx webview content iframe loaded page?)。它是空的。
我还尝试在客户端允许所有具有内容安全策略、X-Frame-Options 等的内容(通过覆盖 HTTP headers),遵循 JavaFX WebView disable Same origin policy (allow cross domain requests)。它没有改变任何东西。
我添加了一个 WebConsoleListener 来查看一些日志。我没有错误。
这是什么问题?有没有办法获取更多日志?
原来是以下问题:iframe中的网站证书链有问题(iframe中的网站没有传输整个证书链)。该问题是使用 SSLLabs 确定的。
使用浏览器访问页面时没有问题,因为浏览器能够管理这种情况,但 sun JVM 无法做到。
某处出现了SSL握手异常,但被JavaFX WebView隐藏了(某处被捕获,之后没有清晰显示)。
因此,一旦问题被确定,我们就会回到传统的解决方案来解决它:
- 如果可能,修复证书链不完整的网站(推荐)
- 如果不是,请通过将站点提供的证书添加到 cacerts 文件来明确信任该站点提供的证书,或者禁用 SSL 安全性(不推荐)
我正在使用 JavaFX WebView 加载网站。此网站正在使用 iframe。
它在经典浏览器上运行良好,但是当我使用 JavaFX WebView 显示页面时,框架是空的。
我试图通过 Java 代码以编程方式显示 iframe 的内容(根据此:How to get by javafx webview content iframe loaded page?)。它是空的。
我还尝试在客户端允许所有具有内容安全策略、X-Frame-Options 等的内容(通过覆盖 HTTP headers),遵循 JavaFX WebView disable Same origin policy (allow cross domain requests)。它没有改变任何东西。
我添加了一个 WebConsoleListener 来查看一些日志。我没有错误。
这是什么问题?有没有办法获取更多日志?
原来是以下问题:iframe中的网站证书链有问题(iframe中的网站没有传输整个证书链)。该问题是使用 SSLLabs 确定的。
使用浏览器访问页面时没有问题,因为浏览器能够管理这种情况,但 sun JVM 无法做到。
某处出现了SSL握手异常,但被JavaFX WebView隐藏了(某处被捕获,之后没有清晰显示)。
因此,一旦问题被确定,我们就会回到传统的解决方案来解决它:
- 如果可能,修复证书链不完整的网站(推荐)
- 如果不是,请通过将站点提供的证书添加到 cacerts 文件来明确信任该站点提供的证书,或者禁用 SSL 安全性(不推荐)