Publicado em 5 de julho de 2019

JxBrowser 6.24

Temos o prazer de anunciar o lançamento do novo JxBrowser 6.24!

Nesta atualização, expandimos a API pública com as novas funcionalidades que você mais tem pedido e corrigimos muitos dos problemas comunicados.

Note que esta atualização é a última pequena atualização do JxBrowser 6 que expande a API pública com a nova funcionalidade. Todas as novas funcionalidades, atualizações do Chromium, suporte dos novos sistemas operacionais e JDK, diferentes melhorias, etc. serão aplicadas sobre a última versão (principal). A versão atual é a 7.0. Recomendamos fortemente que atualize os seus projetos que utilizam o JxBrowser para a versão mais recente do JxBrowser.

O JxBrowser 6 será suportado até ao final de 2019. Consulte a seção FAQ no nosso guia “Migrar de 6.x para 7.0”.

Funções e melhorias

Switches Chromium

  • O switch --hide-scrollbars que permite esconder barras de rolagem nas páginas da web.
  • O switch --disable-touch-menu que bloqueia o menu pop-up de toque no Windows.
  • O switch --autoplay-policy=no-user-gesture-required que permite ativar a reprodução automática nas páginas Web. Por padrão, a reprodução automática do está desativada.

API

  • O método DOMElement DOMAttributeNode.getOwnerElement() que permite obter o nó DOMElement ao qual este atributo está ligado.
  • O método List<Certificate> CertificateVerifyParams.getIntermediateCertificates() que permite obter a lista de certificados intermediários obtidos do servidor que podem ser utilizados para reconstruir e verificar a cadeia completa de certificados.
  • O método LoadParams.isMainFrame() que permite saber se é um frame principal que iniciou este request de carregamento.
  • A interface BoundsListener que permite manipular requests para redimensionar/mover a janela do navegador através das funções JavaScript resizeTo(), resizeBy(), moveTo() e moveBy().
  • A interface FocusListener que permite obter notificações quando o JavaScript solicita a definição do foco para uma instância do Browser.

Outras funções e melhorias

  • Suporte do NaN do JavaScript na ponte JavaScript-Java.
  • Suporte de internacionalização (i18n) ao navegar no sistema de arquivos local.
  • Evita que os objetos XPathResult sejam coletados do lixo enquanto são utilizados no código Java.
  • Evita o bug no JDK com o erro “java.io.IOException: error=26, Text file busy” ao extrair binários no Linux.
  • Inclui as informações sobre os detalhes do produto, tais como versão, direitos de autor, nome do produto, etc. nos detalhes dos binários do JxBrowser na plataforma Windows.
  • Melhora a segurança desativando a funcionalidade que permite ignorar erros de certificados SSL e carregar páginas Web HTTPS com certificados SSL inválidos por padrão. Agora, essas páginas Web por padrão não serão carregadas e você receberá uma página de erro reportando um certificado SSL inválido.

Problemas corrigidos

  • Perda de thread durante a conversão de um grande número de documentos HTML para PDF. As threads “Printing_Worker” estão sendo vazadas para cada chamada Browser.print() e, eventualmente, o programa falha.
  • Deadlock de thread ao definir o handler de protocolo personalizado de PopupContainer.insertBrowser().
  • O problema de dimensionamento no Windows 10 com uma configuração de várias telas com diferentes fatores de dimensionamento (por exemplo, 100% e 125%) após a atualização para o Chromium 69.
  • O visualizador de PDF é aberto na visão completa em vez de abrir num IFRAME onde o documento PDF está incorporado.
  • Piscamento preto na inicialização do JFrame no Windows.
  • A falta do evento LoadListener.onFinishLoadingFrame() ao carregar, por exemplo, “about:blank” no Linux.
  • Falta do evento LoadListener.onFailLoadingFrame() quando se espera que ele seja disparado.
  • Falta do evento NetworkDelegate.onBeforeURLRequest() ao carregar uma página web.
  • Os service workers JavaScript offline não são inicializados corretamente. Ao carregar uma página Web que inicializa o serviço workers, vemos a mensagem “Erro durante o registro do service worker” no console JS.
  • O erro NumberFormatException é lançado quando se tenta obter as propriedades do elemento de entrada HTML vazio.
  • O controle JavaFX BrowserView é clicável quando a caixa de diálogo modal é aberta no modo de renderização heavyweight no Linux.
  • Falha na tentativa de registrar o objeto Java registrado através das funções console.log() ou alert() do JavaScript.
  • Falha ao carregar uma URL de depuração remota no JxBrowser no Windows.
  • Falha ao abrir, fechar e abrir novamente uma janela pop-up no Windows.
  • Falha ao atualizar a configuração do proxy quando pelo menos uma instância do Browser foi criada.
  • Falha em chamadas subsequentes de URL de carregamento quando NetworkDelegate está configurado.
  • Falha no processo de renderização do Chromium ao cancelar a transferência de arquivos.
  • O erro StringIndexOutOfBoundsException é lançado ao chamar CookieStorage.getAllCookies().
  • O erro IllegalStateException ao chamar JSObject.setProperty() depois de carregar uma página Web com um domínio diferente.
  • O erro “failed to deserialize message” quando se clica no controle BrowserView no Windows com IME ativado.
  • Os binários do Win64 Chromium em falta no ambiente OSGi.
  • Falha ao descartar a janela pop-up suspensa no Windows.
  • O SpellCheckerService sempre informando que o corretor ortográfico está ativado, mesmo quando está desativado.

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

Go Top