通过JDBC

时间:2015-10-18 10:04:11

标签: jdbc libreoffice apache-drill

我正在尝试通过JDBC接口使用 LibreOffice 作为 Drill DB 引擎的前端。目前我在嵌入模式下工作,然后我将切换到分布式模式。 Drill在CLI或GUI界面中运行良好。 我正在使用 Oracle JRE 1.7 我已经注册了Java类org.apache.drill.jdbc.Driver,并且找到了它。 但是一旦我尝试连接,答案总是

  

"显示java.lang.NullPointerException&#34 ;.
  "参考处理程序"守护程序prio = 10 tid = 0x00007fc64c140800 nid = 0x916 in Object.wait()[0x00007fc63f2f1000] java.lang.Thread.State:WAITING(在对象监视器上)java.lang.Object.wait(Native Method) - 等待< 0x00000000d7704470> java.lang.ref上的java.lang.Object.wait(Object.java:503)中的(java.lang.ref.Reference $ Lock)$ ReferenceHandler.run(Reference.java:133) - locked< 0x00000000d7704470> (java.lang.ref.Reference $ Lock)
  " VM Thread" prio = 10 tid = 0x00007fc64c13c000 nid = 0x915 runnable" GC任务线程#0(ParallelGC)" prio = 10 tid = 0x00007fc64c02b000 nid = 0x911 runnable" GC任务线程#1(ParallelGC)" prio = 10 tid = 0x00007fc64c02d000 nid = 0x912 runnable" GC任务线程#2(ParallelGC)" prio = 10 tid = 0x00007fc64c02f000 nid = 0x913 runnable" GC任务线程#3(ParallelGC)" prio = 10 tid = 0x00007fc64c030800 nid = 0x914 runnable" VM Periodic Task Thread" prio = 10 tid = 0x00007fc64c17c800 nid = 0x91d等待条件JNI全球参考:145

相同的JDBC接口似乎在Squirrel中有效,并且可以正确打开。

有人设法解决了吗? 非常感谢帮助。

让我补充一点线索(谢谢Mark,谢谢Jim)。 我只是使用LibreOffice Base作为应用程序,因为它来自Ubuntu Desktop。 这里有一些细节:
LibreOffice:版本:4.2.8.2 构建ID:420m0(构建:2)

riccardo @ coccodrill:〜$ java -version java版" 1.7.0_80" Java(TM)SE运行时环境(版本1.7.0_80-b15) Java HotSpot(TM)64位服务器VM(内置24.80-b11,混合模式)

riccardo @ coccodrill:〜$ uname -a Linux coccodrill 3.19.0-30-generic#34~14.04.1-Ubuntu SMP Fri Oct 2 22:09:39 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux

马克,对不起,我不知道如何检索NullPointer异常的堆栈跟踪,因为我不是在编写应用程序,所以我周围没有开发环境。我想,有点盲目工作。

1 个答案:

答案 0 :(得分:0)

我认为它不相容。我尝试做同样的事情,但是使用更新的版本(Apache Drill 1.7和LibreOffice 5.1),它显示了这个错误:Running Drill in embedded mode using Drill's jdbc-all JDBC driver Jar file alone is not supported.

但我确实让它使用ODBC驱动程序。

此处类似的问题:Apache Drill - connection to Drill in Embedded Mode [java]