JxBrowser(點擊下載)是將基於Chromium的瀏覽器與Java應用程序集成,以處理和顯示HTML5,CSS3,JavaScript,Flash等。java
JxBrowser更新至最新版v7.2,容許針對HTTP和網絡錯誤覆蓋標準Chromium錯誤頁面,容許設置不安全的來源視爲安全,改進多種功能,修復多項Bug,具體更新狀況以下:編程
新增功能
- 自定義錯誤頁面:經過兩個新的回調擴展了API,該回調容許針對HTTP和網絡錯誤覆蓋標準Chromium錯誤頁面。如下簡單示例演示瞭如何執行此操做:
navigation.set(ShowHttpErrorPageCallback.class, params ->
ShowHttpErrorPageCallback.Response.show(
"HTTP error"));
navigation.set(ShowNetErrorPageCallback.class, params ->
ShowNetErrorPageCallback.Response.show(
"Network error"));
- 網站圖標:能夠經過Browser.favicon()方法訪問當前加載的網頁的收藏夾圖標。
- 透明背景:可在Browser實例中加載的網頁上啓用透明背景。要在Browser實例中加載的網頁上啓用透明背景,請使用如下設置:
browser.settings().enableTransparentBackground();
注意:此功能僅在Windows和Linux的屏幕外渲染模式下有效。在macOS上,它能夠在兩種渲染模式下工做。
- 將不安全的來源視爲安全:能夠使用API配置設置被視爲安全的不安全來源列表
Engine engine = Engine.newInstance(
EngineOptions.newBuilder(renderingMode)
.treatInsecureOriginAsSecure(
"http://foo.com", "*.foo.*.bar.com")
.build());
- Frame使用如下API 訪問已啓動下載的實例:
downloads.set(StartDownloadCallback.class, (params, tell) -> {
params.frame().ifPresent(frame -> {});
...
});
- 節點的XPath:該API已經過Node.xPath()方法進行了擴展,該方法容許獲取表示節點XPath的字符串。
- 禁止JavaScript訪問Cookie:容許document.cookies使用如下代碼阻止JavaScript訪問屬性。
browser.settings().disallowJavaScriptAccessCookies();
改進
- Maven存儲庫中現已提供用於Swing和JavaFX工件的Javadoc 。
- BrowserView經過該browserView.requestFocus()方法增長了以編程方式請求Swing和JavaFX中的焦點的功能。
- Windows 32位和64位上的全部Chromium二進制文件如今都使用有效的TeamDev簽名進行了簽名。
- 用於在Windows上提取Chromium二進制文件的內部7zip可執行文件的簽名已更新。
Bug修復
- 修復啓用隱身模式後清除HTTP磁盤緩存時崩潰。
- 修復java.lang.IllegalStateException建立Browser實例時的錯誤。
- 修復BeforeSendUploadDataCallback.Params中的空UrlRequest問題。
- 修復當Chromium進程在阻止PRC調用期間終止時,java.lang.NullPointerException錯誤並凍結。
- 修復建立但未顯示JavaFX BrowserView時出現java.lang.NullPointerException錯誤。
- 修復java.lang.IllegalArgumentException:僅在類路徑中包含jxbrowser-win32.jar時,沒法在JAR錯誤中找到/7.1/chromium-win64.7z資源。
- 修復下載後還沒有關閉的啓動空彈出窗口。
- 修復當BrowserView位於JavaFX Tab中時,將忽略鼠標單擊的問題。