有沒有辦法從org.h2.jdbc.JdbcConnection
獲得olap4j.OlapConnection
?從org.h2.jdbc.JdbcConnection獲取olap4j.OlapConnection
現在,我想這(如圖所示there):
Class.forName("org.h2.Driver");
Class.forName("mondrian.olap4j.MondrianOlap4jDriver");
Connection conn = DriverManager.getConnection("jdbc:h2:~/test;", "sa", "");
OlapWrapper wrapper = (OlapWrapper) conn;
OlapConnection olapConn = wrapper.unwrap(OlapConnection.class);
但我得到一個
Exception in thread "main" java.lang.ClassCastException: org.h2.jdbc.JdbcConnection cannot be cast to org.olap4j.OlapWrapper at myprogram.main(Mondrian2H2Test.java:67)
:67 OlapWrapper wrapper = (OlapWrapper) conn;
編輯:
我也試過這樣:
Class.forName("org.h2.Driver");
Class.forName("mondrian.olap4j.MondrianOlap4jDriver");
Connection conn = DriverManager.getConnection("jdbc:h2:~/test;", "sa", "");
OlapConnection olapConn = conn.unwrap(OlapConnection.class);
有了這樣的結果:
Exception in thread "main" java.lang.AbstractMethodError: org.h2.jdbc.JdbcConnection.unwrap(Ljava/lang/Class;)Ljava/lang/Object; at myprogram.main(Mondrian2H2Test.java:46)
:46 OlapConnection olapConn = conn.unwrap(OlapConnection.class);
這對我來說很合適。蒙德里安絕對可以傳遞空密碼。 –
謝謝!我已經刪除了有關密碼的評論。 –