Publicado em 24 de outubro de 2018

JxBrowser 6.22

Temos sempre o prazer de trazer novas funcionalidades para o JxBrowser, mas esta atualização está especialmente grande. Veja o que há de novo na versão 6.22.

macOS Mojave

O JxBrowser agora é oficialmente compatível com o macOS 10.14 Mojave.

OpenJDK 11

O Java 11 chegou. Com as recentes alterações à distribuição e suporte do Oracle JDK, tem havido uma incerteza considerável sobre os direitos de utilização do Oracle JDK versus as compilações OpenJDK da Oracle. Muitos dos nossos clientes perguntaram se estamos planejando suportar também o OpenJDK.

Temos o prazer de informar que agora o JxBrowser suporta tanto o Oracle JDK como o OpenJDK 11 da Oracle.

O JxBrowser suporta Java 11 (Oracle e OpenJDK) com as mesmas limitações que Java 9 e 10:

  • O JxBrowser suporta apenas aplicações Java 9+ que não utilizam o Java Platform Module System.
  • O JxBrowser não suporta SWT+Java 9+.
  • O JxBrowser suporta apenas os parâmetros padrão da JVM. Se você modificar os valores padrão, por exemplo, --illegal-access=deny em vez do padrão --illegal-access=permit, dos parâmetros da VM, então a biblioteca pode não funcionar no JRE 9 e superior.

OpenJFX

No Java 11, o JavaFX já não faz parte do JDK. Agora ele é um conjunto de módulos que tem de ser baixados separadamente e incluído no caminho do módulo. Estes módulos não pertencem aos “módulos JDK do sistema”, portanto as regras padrões relacionadas com a exportação de pacotes para módulos sem nome e o acesso reflexivo a estes pacotes não se aplicam a eles. Isso significa que o JxBrowser não pode ser executado no OpenJFX mesmo se o parâmetro illegal-access da VM estiver configurado com o valor padrão de permissão. Para executar o JxBrowser no OpenJFX, os seguintes parâmetros de VM devem ser aplicados em tempo de execução:

--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 no Ubuntu

Agora o JxBrowser suporta IME no modo de renderização heavyweight no Ubuntu 16.04 e superior.

Eventos de progresso de upload

O UploadProgressListener que permite receber eventos de progresso de upload foi adicionado. Aqui um exemplo de como utilizá-lo:

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

Problemas corrigidos

  • Número de página zero ao imprimir para PDF.
  • As sugestões de preenchimento automático não sendo apresentadas.
  • A falha nativa do Chromium ao configurar o SpellCheckerService.
  • PluginFilter.isPluginAllowed() não sendo invocado por janelas pop-up.
  • DefaultDownloadHandler criando JFileChooser em não-EDT.
  • O erro java.lang.NoClassDefFoundError: sun/awt/AWTAccessor no JDK 1.6.0_02.
  • O 7zr.exe sendo assinado com uma assinatura TeamDev sem um carimbo de data/hora.

Nos envie uma mensagem para customer-care@teamdev.com para fazer o download do JxBrowser 6.22.

Go Top