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 JavaScriptresizeTo()
,resizeBy()
,moveTo()
emoveBy()
. - A interface
FocusListener
que permite obter notificações quando o JavaScript solicita a definição do foco para uma instância doBrowser
.
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()
oualert()
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 chamarCookieStorage.getAllCookies()
. - O erro
IllegalStateException
ao chamarJSObject.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.
Siga @JxBrowserTeam para obter todas as atualizações da biblioteca.
Se inscreva na nossa RSS feed para obter atualizações instantâneas sobre os novos lançamentos.