I just tried running the example and it seems to work fine for me. I assume that you modified the code in some way for it to run against a proper ZK instance? Can you post it somewhere?
On Thu, Mar 10, 2016 at 5:53 AM, s influxdb <[email protected]> wrote: > > ---------- Forwarded message ---------- > From: s influxdb <[email protected]> > Date: Wed, Mar 9, 2016 at 10:36 AM > Subject: Re: curator pathcache > To: Jordan Zimmerman <[email protected]> > Cc: [email protected] > > > Sorry for posting this in a wrong forum the first time. > > I recreated a new project and was running the example code here for cache > : http://curator.apache.org/curator-examples/index.html > > > Today when i try to replicathe NPE i am unable to do that . > However when i call the list(cache) it prints the size of the data in the > node as 0. This works with NodeCache > > Curator libraries are 2.10 and zookeeper version 3.4.6. > > Ideally i would like to use TreeCache but it gave me NPE too. My use case > is setting a watch on the entire znode in the cluster and be notified about > it. Thanks for replying to the mail. > > private static void list(PathChildrenCache cache) > { > if ( cache.getCurrentData().size() == 0 ) > { > System.out.println("* empty *"); > } > else > { > for ( ChildData data : cache.getCurrentData() ) > { > System.out.println(data.getPath() + " = " + new > String(data.getData())); > } > } > } > > > > > On Wed, Mar 9, 2016 at 9:44 AM, Jordan Zimmerman < > [email protected]> wrote: > >> Moving this to Curator’s list… >> >> Where do you get the NPE? Please send the stacktrace. >> >> -Jordan >> >> > On Mar 8, 2016, at 8:27 PM, s influxdb <[email protected]> wrote: >> > >> > I am trying to run the path cahce and keep java NPE >> > >> > Running curator 2.9.0 libraries against a zookeeper 3.4.6 cluster >> > Even >> > >> > The samples are taken from the curator examples . >> > >> > >> > >> > public void run () throws Exception >> > { >> > try { >> > >> > pcache = new PathChildrenCache(client, PATH, true); >> > pcache.start(); >> > >> > addListener(cache); >> > >> > // list(pcache); >> > >> > pcache.close(); >> > } >> > finally { >> > CloseableUtils.closeQuietly(cache); >> > } >> > } >> > >> > >> > private static void addListener(PathChildrenCache cache) >> > { >> > // a PathChildrenCacheListener is optional. Here, it's used >> just >> > to log changes >> > PathChildrenCacheListener listener = new >> > PathChildrenCacheListener() >> > { >> > @Override >> > public void childEvent(CuratorFramework client, >> > PathChildrenCacheEvent event) throws Exception >> > { >> > switch ( event.getType() ) >> > { >> > case CHILD_ADDED: >> > { >> > System.out.println("Node added: " + >> > ZKPaths.getNodeFromPath(event.getData().getPath())); >> > break; >> > } >> > >> > case CHILD_UPDATED: >> > { >> > System.out.println("Node changed: " + >> > ZKPaths.getNodeFromPath(event.getData().getPath())); >> > break; >> > } >> > >> > case CHILD_REMOVED: >> > { >> > System.out.println("Node removed: " + >> > ZKPaths.getNodeFromPath(event.getData().getPath())); >> > break; >> > } >> > } >> > } >> > }; >> > cache.getListenable().addListener(listener); >> > } >> > >> > >> > Here running a list returns empty size all the time >> > >> > private static void list(PathChildrenCache cache) >> > { >> > >> > if ( cache.getCurrentData().size() == 0 ) >> > { >> > System.out.println("* empty *"); >> > } >> > else >> > { >> > for ( ChildData data : cache.getCurrentData() ) >> > { >> > System.out.println(data.getPath() + " = " + new >> > String(data.getData())); >> > } >> > } >> > } >> >> > >
