ОШИБКА org.apache.zookeeper.ClientCnxn - Ошибка при вызове наблюдателя
Я новичок в зоопарке. Я написал простую программу для создания постоянного узла. Он работает, но дает исключение, когда выполнение завершено. Я попытался выполнить поиск в Google, но нет удовлетворительного ответа. Может ли кто-нибудь советовать мне что-нибудь
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();
}
}
2 ответа
У меня также была эта ошибка, регистрируемая. Это потому, что наблюдатель Zookeeper является нулевым. В вызове конструктора третий параметр - наблюдатель:
ZooKeeper zk=new ZooKeeper("localhost",1281, null);
Похоже, что Zookeeper ClientCnxn пытается вызвать процесс на наблюдателе, даже если он нулевой. Однако, это ловит исключение и просто регистрирует ошибку и уходит.
Если вы не хотите смотреть события, вы можете написать свой собственный "StubWatcher".
Создайте класс, который наследует от Watcher
и реализовать process
метод с пустым телом.
Это должно сделать это.