ОШИБКА 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 метод с пустым телом.

Это должно сделать это.

Другие вопросы по тегам