2014-06-04 6 views
1

나는 사육사를 처음 사용합니다. 영구 노드를 생성하는 간단한 프로그램을 작성했습니다. 그것의 작동하지만 한 번 예외가 실행 완료됩니다. 나는 구글에서 검색하려고했지만 만족스러운 답변이 없습니다. 아무도 조언을 해줄 수 없어요.오류 org.apache.zookeeper.ClientCnxn - watcher를 호출하는 중 오류가 발생했습니다.

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(); 
    } 
} 
+0

전체 예외는 무엇입니까 ?? 또한 Zookeeper가 잘 작동하는지 znode에 수동으로 데이터를 쓸 수 있는지 확인하십시오. –

답변

1

또한이 오류가 기록되었습니다. 그것은 사육사 관찰자가 null이기 때문입니다.

ZooKeeper zk=new ZooKeeper("localhost",1281, null); 

null의 경우에도 사육사 ClientCnxn는 감시자에 과정을 호출하려고 것으로 보인다 : 생성자에 대한 호출에서 세 번째 매개 변수는 감시자이다. 그러나 예외를 포착하고 오류를 기록하고 계속 진행합니다.

1

이벤트를보고 싶지 않으면 "StubWatcher"를 직접 작성할 수 있습니다.

Watcher에서 상속받은 클래스를 만들고 빈 몸체로 process 메서드를 구현하십시오.

그렇게해야합니다.

관련 문제