2017-07-04 139 views
1

感謝您的時間。我試圖訪問一個遠程Cassandra DB來完成我的斷言。我看到服務器正在運行: 卡桑德拉V 3.0.8.1293 驅動程序類型:Cassandra的CQL Datastax Java驅動程序的Apache卡桑德拉 - 核心[3.0.5]Cassandra與Groovy腳本的連接在SoapUI

所以,我用下面簡單的代碼訪問嘗試數據庫

import com.datastax.driver.core.* 

Cluster cluster = null; 
try { 
cluster = Cluster.builder().addContactPoint("x.x.x.x").withCredentials("xxxxxxx", "xxxxxx").withPort(9042).build() 

Session session = cluster.connect();       

ResultSet rs = session.execute("select * from TABLE"); 
Row row = rs.one(); 
} finally { 
if (cluster != null) cluster.close(); 
} 

當我使用Cassandra的驅動核心 - 2.0.1.jar我收到錯誤:

ERROR:com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /x.x.x.x(null))

閱讀文檔和很多帖子在這裏和其他博客我看到了t可能與驅動程序版本不兼容,所以我嘗試將驅動程序升級到許多版本(cassandra-driver-core-2.5,cassandra-driver-core-3,cassandra-driver-core-3.2),但是我正在以下:

ERROR:java.lang.ExceptionInInitializerError

也嘗試過使用JDBC連接,但無濟於事,使用這些線 SoapUI JDBC connection with Apache Cassandra

其實我運行的想法提出的構造。任何人都可以提出或指出如何實際實現這一目標的方向,無論是通過指向一些教程或任何想法。 非常感謝你

+0

已經嘗試了上面描述的過程,使用乾淨的SOAPUI 5.3.0安裝以及cassandra-driver-core-3.0.5.jar,cassandra-driver-extras-3.0.5.jar,cassandra-driver在lib文件夾上的-mapping-3.0.5.jar –

回答

0

我想你還沒有啓用遠程訪問cassandra。

請試着用下面的配置啓用遠程訪問 -

文件路徑/etc/cassandra/default.conf/cassandra.yaml

rpc_address: 0.0.0.0 

broadcast_rpc_address: <serverIPAddress> 

之後,重啓卡桑德拉的服務。

+0

不幸的是,因爲我可以使用InteliJ連接,使用完全相同的代碼。這個問題似乎與SOAP UI有關 –