List icon Contents

Posted on October 24, 2018

JxBrowser 6.22

We’re always glad to bring new features to JxBrowser, but this update is especially big. See what’s new in version 6.22.

macOS Mojave

JxBrowser now officially supports macOS 10.14 Mojave.

OpenJDK 11

Java 11 has arrived. With the recent changes to Oracle JDK distribution and support, there’s been considerable uncertainty over the rights to use Oracle JDK vs Oracle’s OpenJDK builds. Many of our customers asked whether we are planning to support OpenJDK as well.

We are glad to let you know that now JxBrowser supports both Oracle JDK and Oracle’s OpenJDK 11.

JxBrowser supports Java 11 (both Oracle and OpenJDK) with the same limitations as Java 9 & 10:

  • JxBrowser supports only Java 9+ applications that don’t use the Java Platform Module System.
  • JxBrowser doesn’t support SWT+Java 9+.
  • JxBrowser supports only default JVM parameters. If you modify default values, e.g. --illegal-access=deny instead of the default --illegal-access=permit, of the VM parameters, then the library might not work on JRE 9 and higher.

OpenJFX

In Java 11 JavaFX is no longer a part of JDK. Now it is a set of modules that needs to be downloaded separately and included into the module path. These modules do not belong to the "system JDK modules", so the default rules related to exporting packages to unnamed modules and reflective access to these packages do not apply to them. It means that JxBrowser cannot be run under OpenJFX even if the illegal-access VM parameter configured to the default permit value. In order to run JxBrowser under OpenJFX the following VM parameters must be applied at runtime:

--add-exports javafx.controls/com.sun.javafx.scene.control=ALL-UNNAMED
--add-exports javafx.graphics/com.sun.javafx.stage=ALL-UNNAMED
--add-exports javafx.graphics/com.sun.javafx.scene=ALL-UNNAMED
--add-exports javafx.graphics/com.sun.javafx.scene.traversal=ALL-UNNAMED
--add-exports javafx.graphics/com.sun.javafx.tk=ALL-UNNAMED
--add-exports javafx.graphics/com.sun.glass.ui=ALL-UNNAMED
--add-exports java.desktop/sun.awt=ALL-UNNAMED

IME on Ubuntu

JxBrowser now supports IME in the heavyweight rendering mode on Ubuntu 16.04 and higher.

Upload progress events

The UploadProgressListener that allows receiving upload progress events has been added. Here’s an example how to use it:

browser.addUploadProgressListener(new UploadProgressListener() {
    @Override
    public void onProgressChanged(int uploadPositionInBytes, int uploadSizeInBytes) {
    }
});

Fixed issues

  • Zero page number when printing to PDF.
  • Autofill suggestions not being displayed.
  • The Chromium native crash when configuring SpellCheckerService.
  • PluginFilter.isPluginAllowed() not being invoked for popup windows.
  • DefaultDownloadHandler creating JFileChooser in non-EDT.
  • The java.lang.NoClassDefFoundError: sun/awt/AWTAccessor error in JDK 1.6.0_02.
  • 7zr.exe being signed with a TeamDev signature without a timestamp.

Write us at customer-care@teamdev.com to download JxBrowser 6.22.