简体   繁体   English

当我使用hsqldb时,GUI(JavaFx)出现问题

[英]When I use hsqldb I have problems with GUI (JavaFx)

I can't understand how RDB can be linked with GUI but I've checked several times. 我不明白RDB如何与GUI链接,但是我已经检查了好几次。 I have osgi javafx application. 我有osgi javafx应用程序。 when I install hsqldb and use database I have strange problems: Before that I used h2 and I didn't have anything like that. 当我安装hsqldb并使用数据库时,我遇到了奇怪的问题:在此之前,我使用了h2,但我没有类似的东西。 And the only thing was changed is the RDB. 唯一改变的是RDB。 I've checked on centos 7.1 and win 7 (VBOX) result is the same. 我已经检查了centos 7.1和win 7(VBOX)结果是否相同。

1) When I press CTRL+SHIFT I get a lot of the following exceptions: 1)当我按CTRL + SHIFT时,出现以下许多异常:

java.lang.ArrayIndexOutOfBoundsException: 85
    at sun.awt.X11.XEvent.getFieldsAsString(XEvent.java:86)
    at sun.awt.X11.XWrapperBase.toString(XWrapperBase.java:37)
    at sun.awt.X11.XEvent.toString(XEvent.java:8)
    at java.lang.String.valueOf(String.java:2994)
    at sun.util.logging.PlatformLogger$JavaLoggerProxy.doLog(PlatformLogger.java:626)
    at sun.util.logging.PlatformLogger.finer(PlatformLogger.java:387)
    at sun.awt.X11.XToolkit.run(XToolkit.java:586)
    at sun.awt.X11.XToolkit.run(XToolkit.java:532)
    at java.lang.Thread.run(Thread.java:745)

2) My javafx data binding stop working 2)我的javafx数据绑定停止工作
3) When I close application via CTRL+CI get the following: 3)当我通过CTRL + CI关闭应用程序时,将得到以下信息:

^C=========== Performance Statistics ============= ^ C ===========性能统计=============

Time: com.sun.webkit.perf.WCFontPerfLogger.GETASCENT: 0ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETLINEGAP: 0ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHWIDTH: 0ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETDESCENT: 0ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.HASH: 0ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETLINESPACING: 1ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.HASUNIFORMLINEMETRICS: 1ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETXHEIGHT: 1ms, 0.00% com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHCODES: 32ms, 0.11% com.sun.webkit.perf.WCFontPerfLogger.TOTALTIME: 29131ms, 100.00% 时间:com.sun.webkit.perf.WCFontPerfLogger.GETASCENT:0ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.GETLINEGAP:0ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHWIDTH:0ms,0.00% com.sun.webkit.perf.WCFontPerfLogger.GETDESCENT:0ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.HASH:0ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.GETLINESPACING:1ms,0.00%com。 sun.webkit.perf.WCFontPerfLogger.HASUNIFORMLINEMETRICS:1ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.GETXHEIGHT:1ms,0.00%com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHCODES:32ms,0.11%com。 webkit.perf.WCFontPerfLogger.TOTALTIME:29131ms,100.00%

Invocations count: com.sun.webkit.perf.WCFontPerfLogger.GETASCENT: 1 com.sun.webkit.perf.WCFontPerfLogger.GETLINEGAP: 1 com.sun.webkit.perf.WCFontPerfLogger.GETDESCENT: 1 com.sun.webkit.perf.WCFontPerfLogger.HASH: 1 com.sun.webkit.perf.WCFontPerfLogger.GETLINESPACING: 1 com.sun.webkit.perf.WCFontPerfLogger.HASUNIFORMLINEMETRICS: 1 com.sun.webkit.perf.WCFontPerfLogger.GETXHEIGHT: 1 com.sun.webkit.perf.WCFontPerfLogger.TOTALTIME: 1 com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHCODES: 2 com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHWIDTH: 4 调用计数:com.sun.webkit.perf.WCFontPerfLogger.GETASCENT:1 com.sun.webkit.perf.WCFontPerfLogger.GETLINEGAP:1 com.sun.webkit.perf.WCFontPerfLogger.GETDESCENT:1 com.sun.webkit.perf。 WCFontPerfLogger.HASH:1 com.sun.webkit.perf.WCFontPerfLogger.GETLINESPACING:1 com.sun.webkit.perf.WCFontPerfLogger.HASUNIFORMLINEMETRICS:1 com.sun.webkit.perf.WCFontPerfLogger.GET.HEIGHT:1 perf.WCFontPerfLogger.TOTALTIME:1 com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHCODES:2 com.sun.webkit.perf.WCFontPerfLogger.GETGLYPHWIDTH:4

================================================ ===============================================

=========== Performance Statistics ============= ===========性能统计=============

Time: com.sun.webkit.perf.WCGraphicsPerfLogger.RESTORESTATE: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SET_FONT_SMOOTHING_TYPE: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_R: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SETCOMPOSITE: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.DISPOSE: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SAVESTATE: 0ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_IIII: 1ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.TRANSLATE: 1ms, 0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.FLUSH: 2ms, 0.01% com.sun.webkit.perf.WCGraphicsPerfLogger.DRAWSTRING_GV: 7ms, 0.02% com.sun.webkit.perf.WCGraphicsPerfLogger.FILLRECT_FFFFI: 18ms, 0.06% com.sun.webkit.perf.WCGraphicsPerfLogger.TOTALTIME: 29135ms, 100.00% 时间:com.sun.webkit.perf.WCGraphicsPerfLogger.RESTORESTATE:0ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.SET_FONT_SMOOTHING_TYPE:0ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_R:0ms,0.00% com.sun.webkit.perf.WCGraphicsPerfLogger.SETCOMPOSITE:0ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.DISPOSE:0ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.SAVESTATE:0ms,0.00%com。 sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_IIII:1ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.TRANSLATE:1ms,0.00%com.sun.webkit.perf.WCGraphicsPerfLogger.FLUSH:2ms,0.01%com.sun。 webkit.perf.WCGraphicsPerfLogger.DRAWSTRING_GV:7ms,0.02%com.sun.webkit.perf.WCGraphicsPerfLogger.FILLRECT_FFFFI:18ms,0.06%com.sun.webkit.perf.WCGraphicsPerfLogger.TOTALTIME:29135ms,100.00%

Invocations count: com.sun.webkit.perf.WCGraphicsPerfLogger.TOTALTIME: 1 com.sun.webkit.perf.WCGraphicsPerfLogger.DRAWSTRING_GV: 13 com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_R: 17 com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_IIII: 17 com.sun.webkit.perf.WCGraphicsPerfLogger.RESTORESTATE: 34 com.sun.webkit.perf.WCGraphicsPerfLogger.SAVESTATE: 34 com.sun.webkit.perf.WCGraphicsPerfLogger.TRANSLATE: 34 com.sun.webkit.perf.WCGraphicsPerfLogger.SET_FONT_SMOOTHING_TYPE: 44 com.sun.webkit.perf.WCGraphicsPerfLogger.FILLRECT_FFFFI: 45 com.sun.webkit.perf.WCGraphicsPerfLogger.SETCOMPOSITE: 68 com.sun.webkit.perf.WCGraphicsPerfLogger.DISPOSE: 88 com.sun.webkit.perf.WCGraphicsPerfLogger.FLUSH: 88 调用次数:com.sun.webkit.perf.WCGraphicsPerfLogger.TOTALTIME:1 com.sun.webkit.perf.WCGraphicsPerfLogger.DRAWSTRING_GV:13 com.sun.webkit.perf.WCGraphicsPerfLogger.SETCLIP_R:17 com.sun.webkit.perf。 WCGraphicsPerfLogger.SETCLIP_IIII:17 com.sun.webkit.perf.WCGraphicsPerfLogger.RESTORESTATE:34 com.sun.webkit.perf.WCGraphicsPerfLogger.SAVESTATE:34 com.sun.webkit.perf.WCGraphicsPerfLogger.TRANSLATE:34 com.sun.webkit perf.WCGraphicsPerfLogger.SET_FONT_SMOOTHING_TYPE:44 com.sun.webkit.perf.WCGraphicsPerfLogger.FILLRECT_FFFFI:45 com.sun.webkit.perf.WCGraphicsPerfLogger.SETCOMPOSITE:68 com.sun.webkit.perf.WCGraphicsPercomer。88 webkit.perf.WCGraphicsPerfLogger.FLUSH:88

================================================ ===============================================

=========== Performance Statistics ============= ===========性能统计=============

Time: com.sun.webkit.perf.Locks.TOTALTIME: 29772ms, 100.00% 时间:com.sun.webkit.perf.Locks.TOTALTIME:29772ms,100.00%

Invocations count: com.sun.webkit.perf.Locks.TOTALTIME: 1 调用计数:com.sun.webkit.perf.Locks.TOTALTIME:1

HOW TO FIX IT? 如何解决?

I've got the answer from Fred Toussi (Fred, thank you): 我得到了弗雷德·图西(Fred Toussi)的回答(弗雷德,谢谢):
The hsqldb.jar contains the DatabaseManagerSwing which is a GUI app. hsqldb.jar包含DatabaseManagerSwing,它是一个GUI应用程序。 You can compile HSQLDB with the Gradle or Ant (see the /build directory) as hsqldbmain.jar which excludes the Swing classes. 您可以使用Gradle或Ant(请参见/ build目录)作为hsqldbmain.jar编译HSQLDB,其中不包括Swing类。

There was an old bug that showed some JDK had a problem with the Swing classes. 有一个老错误,表明某些JDK的Swing类有问题。 https://sourceforge.net/p/hsqldb/bugs/1304/ https://sourceforge.net/p/hsqldb/bugs/1304/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM