背景

webview中加载html,html的js中使用了indexeddb,但是当前javafx webview不支持indexededdb。会报错
Console: [https://cc.c3663fbd.js:14] TypeError: indexedDB.open is not a function. (In ‘indexedDB.open(“ddd”,l)’, ‘indexedDB.open’ is undefined)

处理过程

思路是,找到一个java版本的indexddb…

2022年11月30日09:18:56 研究中

package sample;import com.mashape.unirest.http.Unirest;
import com.mashape.unirest.http.exceptions.UnirestException;
import com.mohamnag.fxwebview_debugger.DevToolsDebuggerServer;
import com.sun.javafx.scene.web.Debugger;
import com.sun.javafx.webkit.WebConsoleListener;
import com.sun.javaws.IconUtil;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.concurrent.Worker;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.scene.web.WebEvent;
import javafx.scene.web.WebView;
import javafx.util.Callback;
import netscape.javascript.JSObject;
import org.w3c.dom.Document;import java.net.URL;
import java.util.HashMap;
import java.util.Map;class indexedDB{private void open1(String var1,String var2){System.out.println(2222);}private String open(String var1,String var2){return "123123";}private  boolean onsuccess(){return true;}
}
public class Controller {@FXMLprivate WebView webView;indexedDB ind=new indexedDB();public void initialize() throws Exception {webView.getEngine().setJavaScriptEnabled(true);JSObject win = (JSObject) webView.getEngine().executeScript("window");win.setMember("indexedDB", ind);// 设置变量System.out.println(34234);/*** Console: [https://cc.c3663fbd.js:14] TypeError: indexedDB.open is not a function. (In 'indexedDB.open("ddd",l)', 'indexedDB.open' is undefined)*/WebConsoleListener.setDefaultListener(new WebConsoleListener() {@Overridepublic void messageAdded(WebView webView, String message, int lineNumber, String sourceId) {System.out.println("Console: [" + sourceId + ":" + lineNumber + "] " + message);}});webView.getEngine().documentProperty().addListener(new ChangeListener<Document>() {@Overridepublic void changed(ObservableValue<? extends Document> observable, Document oldValue, Document newValue) {/*** if (!document.getElementById('FirebugLite')){*  E = document['createElement' + 'NS'] && document.documentElement.namespaceURI;*   E = E ? document['createElement' + 'NS'](E, 'script') : document['createElement']('script');E['setAttribute']('src', 'https://xxx.js');*  (document['getElementsByTagName']('head')[0] || document['getElementsByTagName']('body')[0]).appendChild(E);* }*/// webView.getEngine().executeScript("if(!window.indexedDB) {console.log(\"Your browser does not support indexedDB.\");}");});URL url = getClass().getResource("xx1.html");webView.getEngine().load("https://88");// DevToolsDebuggerServer.startDebugServer(webView.getEngine().impl_getDebugger(), 51742);}/*** 2022年11月28日15:44:10* 1. webview不能加载页面,是因为不能使用indexeddb* 2. 使用unirest请求报错:unable to find valid certification path to requested target* 参考https://blog.csdn.net/qq_31122833/article/details/107176707* cd C:\Program Files\Java\jdk1.8.0_341\jre\lib\security* keytool -import -keystore cacerts -file C:\Users\88\Desktop\dm\98* 密码changeit*/
}

javafx-webview不支持indexeddb时怎么办相关推荐

  1. java javafx webview_基于JavaFX WebView 的采集开发,了解一下?

    背景 最近想做一个桌面版的客户端,能够加载连接,获取源码等,主要用于快速的获取网站的栏目,便与爬虫该栏目下的最新信息. 相关插件介绍 JavaFX是: •用于创建和交付桌面应用程序的软件平台,以及可以 ...

  2. android h5控制锁屏,WebView播放H5课件时,锁屏解锁后,页面重新绘制的问题

    难题描述:H5页面播放 ,锁屏,解锁后,重新加载了页面,三星不会出现(onpause onstop ,onresume),但在小米.魅族会调用 onpause onstop ondestroy,onr ...

  3. Android Webview完美支持播放各种视频。

    Android WebView加载H5时无法播放H5内的腾讯视频,一直显示"视频加载失败,请刷新页面重试",点击重试也是一样. Android webview使用第三方x5腾讯内核 ...

  4. javaFX WebView使用及打开网页

    前言 JavaFX WebView ( javafx.scene.web.WebView) 组件能够在 JavaFX 应用程序中显示网页(HTML.CSS.SVG.JavaScript). 因此,Ja ...

  5. Atitit 桌面软件跨平台gui解决方案 javafx webview

    Atitit 桌面软件跨平台gui解决方案 javafx webview 参考文章: (1)Atitit 桌面软件跨平台gui解决方案 javafx webview (2)https://www.cn ...

  6. 解决vue在ios或android中用webview打开H5链接时#号后面的参数被忽略问题angular同样适用

    解决vue在ios或android中用webview打开H5链接时#号后面的参数被忽略问题angular同样适用 参考文章: (1)解决vue在ios或android中用webview打开H5链接时# ...

  7. 关于WebView加载URL时显示一片空白的问题

    问题: 当用WebView加载URL时,WebView只是显示一片空白,而没有正常加载所需要的内容: 1>布局文件: <RelativeLayout xmlns:android=" ...

  8. ironic如何支持部署时按需RAID?

    ironic如何支持部署时按需RAID? 新浪大神推荐使用element proliant-tools制作deploy image.element proliant-tools会在ipa ramdis ...

  9. android webview file,Android WebView 不支持 H5 input type=file 解决方法

    最近因为赶项目进度,因此将本来要用原生控件实现的界面,自己做了H5并嵌入webview中.发现点击H5中 input type="file" 标签 不能打开android资源管理器 ...

最新文章

  1. Python 3.9来了!这十个新特性值得关注
  2. FPGA的设计艺术(13)使用generate语句构建可重用的逻辑设计
  3. how many libraries within Cambridge?
  4. 做好的html 保存不了,有些网页不能保存,或者保存后没有内容,怎么办?
  5. RDB 文件的优势和劣势
  6. 交换排序图解_排序算法学习分享(二)交换排序---冒泡排序与快速排序
  7. 可视化idea_给IDEA换个酷炫的主题,这个有点哇塞啊!
  8. 使用pyinstaller打包python程序时问题记录
  9. java泛型实验报告,java实验报告异常集合类和泛型
  10. 直播预告 | Rainbond与Service Mesh微服务架构
  11. P2313 [HNOI2005]汤姆的游戏
  12. sqldeveloper不能启动,显示Unable to create an instance of the Java Virtual Machine...的解决办法...
  13. Hadoop学习总结之Map-Reduce的过程解析
  14. php中json对象转字符串,JSON对象转字符串的一些方法
  15. 计算机通信技术【计算机网络】学习
  16. js日历控件html,第11款插件:jquery.jCal.js显示日历插件
  17. DM 源码阅读系列文章(七)定制化数据同步功能的实现
  18. win10专业版关闭Windows Defender Antivirus
  19. docker mysql5.7 设置不区分大小写
  20. python绘制矩阵散点图

热门文章

  1. java 输出文件到mac路径_javamac的文件路径怎么写
  2. python应用学习(六)——tkinter制作连连看小游戏
  3. tomcat历史版本新特性_OBS V26大版本新特性简介
  4. Python弄懂基础点---print函数格式化输出的几种方式
  5. Postman:基础
  6. 东芝笔记本自带蓝牙在ubuntu中的驱动问题修复方法
  7. 基于蓝牙的无线数据采集系统
  8. 2022年中山大学计算机学院计算机考博申博博士经验分享
  9. Java操作Word方法汇总,并详细介绍最简单的方法!!吊打POI以及那些POI的封装库
  10. python中xpath用法_python xpath 基本用法