Java 错误org.apache.zookeeper.ClientCnxn-调用watcher时出错
我是动物园管理员的新手。我已经编写了创建持久节点的简单程序。它可以工作,但执行完成后会出现异常。我试图在谷歌上搜索,但没有令人满意的答案。谁能给我点建议吗Java 错误org.apache.zookeeper.ClientCnxn-调用watcher时出错,java,apache,hadoop,apache-zookeeper,znodes,Java,Apache,Hadoop,Apache Zookeeper,Znodes,我是动物园管理员的新手。我已经编写了创建持久节点的简单程序。它可以工作,但执行完成后会出现异常。我试图在谷歌上搜索,但没有令人满意的答案。谁能给我点建议吗 public class ZkProg { public static void main(String[] args) throws IOException, KeeperException, InterruptedException { ZooKeeper zk=new ZooKeeper("localho
public class ZkProg {
public static void main(String[] args) throws IOException, KeeperException, InterruptedException
{
ZooKeeper zk=new ZooKeeper("localhost",1281, null);
zk.create("/zookeeper/Names",new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
//zk.delete("/zookeeper/Names",-1);
zk.close();
}
}
我还记录了这个错误。这是因为Zookeeper观察者为空。在调用构造函数时,第三个参数是观察者:
ZooKeeper zk=new ZooKeeper("localhost",1281, null);
Zookeeper客户端CNXN似乎试图调用观察者的进程,即使它为空。但是,它捕获异常,只记录错误并继续操作。如果您不想观看事件,可以编写自己的“StubWatcher” 创建一个继承自
Watcher
的类,并使用空主体实现过程
方法
应该可以了。什么是完全例外??还有一个建议,请检查Zookeeper是否工作正常,是否能够在znode上手动写入数据。