一部の Web サイトでは、JavaFX Webview が StringIndexOutOfBoundsExceptions をスローします。
WebView browser = new WebView();
WebEngine webEngine = browser.getEngine();
setTop(browser);
webEngine.load("https://stackoverflow.wordpress.com");
そして、次の出力が得られます。
java.lang.StringIndexOutOfBoundsException: String index out of range: 4
at java.lang.String.substring(Unknown Source)
at com.sun.javafx.webkit.prism.WCFontImpl.getGlyphsAndAdvances(WCFontImpl.java:120)
at com.sun.webkit.network.URLLoader.twkDidReceiveData(Native Method)
at com.sun.webkit.network.URLLoader.notifyDidReceiveData(URLLoader.java:844)
at com.sun.webkit.network.URLLoader.lambda$didReceiveData$102(URLLoader.java:819)
at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191)
at java.lang.Thread.run(Unknown Source)
他の URL、つまり " http://www.google.de " ではエラーは発生しません。
このスタックトレースの出力を回避できますか、またはこのエラーのスローを回避できますか? WebView はすべての Web サイトを正しくロードしますが、これらのスタック トレースは面倒です。