Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法使Cassandra在基本应用程序中工作_Java_Cassandra_Pom.xml_Datastax Java Driver - Fatal编程技术网

Java 无法使Cassandra在基本应用程序中工作

Java 无法使Cassandra在基本应用程序中工作,java,cassandra,pom.xml,datastax-java-driver,Java,Cassandra,Pom.xml,Datastax Java Driver,这是我当前的错误: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /127.0.0.1 (com.datastax.driver.core.TransportException: [/127.0.0.1] Unexpected exception triggered (java.lang.NoClassDefFoundError: C

这是我当前的错误:

com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /127.0.0.1 (com.datastax.driver.core.TransportException: [/127.0.0.1] Unexpected exception triggered (java.lang.NoClassDefFoundError: Could not initialize class com.datastax.driver.core.Codec)))
    com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:186)
    com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:81)
    com.datastax.driver.core.Cluster$Manager.init(Cluster.java:773)
    com.datastax.driver.core.Cluster$Manager.access$100(Cluster.java:706)
    com.datastax.driver.core.Cluster.<init>(Cluster.java:79)
    com.datastax.driver.core.Cluster.<init>(Cluster.java:66)
    com.datastax.driver.core.Cluster$Builder.build(Cluster.java:687)
    com.t2.claims.persistence.CassandraClient.getOrCreateCluster(CassandraClient.java:12)
    com.t2.claims.persistence.CassandraClient.getOrCreateSession(CassandraClient.java:18)
    com.t2.claims.dao.AlertDaoImpl.findAll(AlertDaoImpl.java:25)
    com.t2.claims.controllers.AlertIndexController.doAfterCompose(AlertIndexController.java:36)
    org.zkoss.zk.ui.impl.UiEngineImpl.doAfterCompose(UiEngineImpl.java:529)
    ....


有人能告诉我为什么会出现这个异常吗?我有一个cassandra客户端在本地运行。(版本1.2.11)。

这不是pom文件的问题。您的客户端(DataStax Java驱动程序)无法访问您的cassandra数据库。这可能是因为以下几个原因:

  • 检查您正在使用的节点的地址
  • 还要检查端口,Cassandra本机二进制协议的默认端口是9042

此处的更多信息:

这不是pom文件的问题。您的客户端(DataStax Java驱动程序)无法访问您的cassandra数据库。这可能是因为以下几个原因:

  • 检查您正在使用的节点的地址
  • 还要检查端口,Cassandra本机二进制协议的默认端口是9042

此处的详细信息:

您的cassandara服务器似乎没有侦听您的请求。 请尝试telnet 127.0.0.1 9160

如果你得到这个 telnet:无法连接到远程主机:连接被拒绝 对于使用DataStax驱动程序的jdbc库来说,它更为成熟且无bug

<dependency>
<groupId>org.apache-extras.cassandra-jdbc</groupId>
<artifactId>cassandra-jdbc</artifactId>
<version>1.2.5</version>
</dependency>

org.apache-extras.cassandra-jdbc
卡桑德拉jdbc
1.2.5

然后重新启动您的cassandara

您的cassandara服务器似乎没有侦听您的请求。 请尝试telnet 127.0.0.1 9160

如果你得到这个 telnet:无法连接到远程主机:连接被拒绝 对于使用DataStax驱动程序的jdbc库来说,它更为成熟且无bug

<dependency>
<groupId>org.apache-extras.cassandra-jdbc</groupId>
<artifactId>cassandra-jdbc</artifactId>
<version>1.2.5</version>
</dependency>

org.apache-extras.cassandra-jdbc
卡桑德拉jdbc
1.2.5

重新启动您的cassandra

遇到了太类似的问题:我的spring应用程序失败,没有可用的主机,我可以通过将配置文件cassandra.yaml中的rpc_端口和native_transport_端口设置为匹配用于连接cassandra的eaxct IP地址(即Cluster.builder()。addContactPoints()来解决问题(…这里的IP地址…),但随后是cqlsh,它不再启动,因为主机没有侦听…直到我意识到侦听器(rpc或本机传输)要么监听127.0.0.1,要么监听主机的真实IP 10.0.0.5,这在这个实现中造成了很大的不同!所以我通过调整cqlsh脚本以同时使用10.0.0.5和获取解析为127.0.0.1而不是10.0.0.5的本地主机名的rif来解决它……这不符合原始的IP网络原理有一个终端应用程序能起到如此大的作用。

遇到了太类似的问题:我的spring应用程序失败,没有可用的主机,我可以通过在配置文件cassandra.yaml中设置rpc_端口和native_transport_端口,以匹配用于连接到cassandra的eaxct IP地址(即Cluster.builder()。addContactPoints()(…这里的IP地址…),但随后是cqlsh,它不再启动,因为主机没有侦听…直到我意识到侦听器(rpc或本机传输)要么监听127.0.0.1,要么监听主机的真实IP 10.0.0.5,这在这个实现中造成了很大的不同!所以我通过调整cqlsh脚本以同时使用10.0.0.5和获取解析为127.0.0.1而不是10.0.0.5的本地主机名的rif来解决它……这不符合原始的IP网络原理我在虚拟机上安装了Cassandra服务器,但无法远程访问。我获得了异常:

com.datastax.driver.core.exceptions.NoHostAvailableException: 
All host(s) tried for query failed (tried: /192.168.1.76:9042 (com.datastax.driver.core.TransportException: [/192.168.1.76:9042] Cannot connect))
首先,我确认我无法通过telnet访问端口9042

我解决了在cassandra服务器上修改cassandra.yaml配置文件的问题

rpc_address = 0.0.0.0
broadcast_rpc_address = 1.2.3.4
那是因为

rpc_地址(或rpc_接口)用于客户端连接,
listen\u address属性用于节点间通信。

我在虚拟机上安装了Cassandra Server,无法远程访问它。我获得了异常:

com.datastax.driver.core.exceptions.NoHostAvailableException: 
All host(s) tried for query failed (tried: /192.168.1.76:9042 (com.datastax.driver.core.TransportException: [/192.168.1.76:9042] Cannot connect))
首先,我确认我无法通过telnet访问端口9042

我解决了在cassandra服务器上修改cassandra.yaml配置文件的问题

rpc_address = 0.0.0.0
broadcast_rpc_address = 1.2.3.4
那是因为

rpc_地址(或rpc_接口)用于客户端连接, 侦听地址属性用于节点间通信