Thanks Jordan. I will try with sample Maven pom file.  I spend a good deal
of time by building the project in Eclipse just by adding the JARs. I
appreciate the quick replies very much.

On Wed, Mar 9, 2016 at 6:16 PM, Jordan Zimmerman <[email protected]
> wrote:

> You need to do much more than that. Have you done much Java programming?
> Curator’s TestServer is in a separate artifact. I suggest you use a
> dependency manager such as Maven or Gradle. The Curator examples directory
> has a Maven pom file that you can use. But, explaining Maven, etc. is more
> than we can do in an email.
>
> https://github.com/apache/curator/tree/master/curator-examples
>
> -Jordan
>
>
> On Mar 9, 2016, at 9:13 PM, s influxdb <[email protected]> wrote:
>
> i was using the Eclipse IDE and adding the Curator JAR's as External JAR.
> It resolves for curator framework , curator client etc
>
> The code i have is nothing but the sample PathCacheExample.java code from
> the examples posted in curator.apache.org
>
> Let me try it using maven instead.
>
> On Wed, Mar 9, 2016 at 6:09 PM, Jordan Zimmerman <
> [email protected]> wrote:
>
>> Post your code along with whatever build scripts you’re using to Github
>> or something similar and we’ll have a look. Are you using Maven? Gradle?
>> How are you putting your dependencies together?
>>
>> On Mar 9, 2016, at 9:04 PM, s influxdb <[email protected]> wrote:
>>
>> i tried all the curator libraries . still same result . TestingServer or
>> the PathCache isn't working
>>
>> On Wed, Mar 9, 2016 at 5:22 PM, s influxdb <[email protected]> wrote:
>>
>>> Ok let me try that.
>>>
>>> On another note this piece of nodecache code works
>>>
>>>             final NodeCache nodeCache = new NodeCache(client, PATH);
>>>                 nodeCache.getListenable().addListener(new
>>> NodeCacheListener() {
>>>                     @Override
>>>                     public void nodeChanged() throws Exception {
>>>                         ChildData currentData =
>>> nodeCache.getCurrentData();
>>>                         System.out.println("data change watched, and
>>> current data = " + new String(currentData.getData()));
>>>                     }
>>>                 });
>>>                 nodeCache.start();
>>>                 Thread.sleep(50000);
>>>
>>> On Wed, Mar 9, 2016 at 5:20 PM, Cameron McKenzie <[email protected]
>>> > wrote:
>>>
>>>> You must have some old Curator stuff on your classpath. All of the
>>>> curator stuff has an org.apache package prefix. It was ported from Netflix
>>>> some time ago.
>>>>
>>>> On Thu, Mar 10, 2016 at 12:15 PM, s influxdb <[email protected]>
>>>> wrote:
>>>>
>>>>> I see the TestingServer class in  import
>>>>> com.netflix.curator.test.TestingServer;
>>>>>
>>>>> In the sample file i see it as import
>>>>> org.apache.curator.test.TestingServer;
>>>>>
>>>>> Even then i get the below error while instantiating a TestingServer
>>>>> Class
>>>>> Default constructor cannot handle exception type Exception thrown by
>>>>> implicit super constructor. Must define an explicit constructor
>>>>>
>>>>> Then i tried the TestingCluster class
>>>>> static TestingCluster       server = new TestingCluster();
>>>>>
>>>>> That gives me a class not found exception
>>>>> Exception in thread "main" java.lang.NoClassDefFoundError:
>>>>> javassist/NotFoundException
>>>>>     at
>>>>> com.netflix.curator.test.TestingCluster.<clinit>(TestingCluster.java:40)
>>>>>
>>>>>
>>>>> On Wed, Mar 9, 2016 at 4:16 PM, Cameron McKenzie <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> The TestingServer class is definitely in the curator-test jar, so you
>>>>>> must have some issue with your build / IDE environment.
>>>>>>
>>>>>> On Thu, Mar 10, 2016 at 11:13 AM, s influxdb <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> I tried importing the curator-test artifcactid and it this import
>>>>>>> org.apache.curator.test.TestingServer; doesn't resolve
>>>>>>>
>>>>>>> On Wed, Mar 9, 2016 at 2:58 PM, Cameron McKenzie <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Can you try running the PathCacheExample unmodified? It uses a
>>>>>>>> testing ZK server. But can you just confirm that this much works for 
>>>>>>>> you?
>>>>>>>> Then maybe try and modify the sample so that it connects to your real 
>>>>>>>> ZK
>>>>>>>> instance?
>>>>>>>>
>>>>>>>> On Thu, Mar 10, 2016 at 9:53 AM, s influxdb <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> i did try adding a sleep and got the same result
>>>>>>>>>      cache.start();
>>>>>>>>>             Thread.sleep(5000);
>>>>>>>>>             list(cache);
>>>>>>>>>
>>>>>>>>> I am using curator libraries version 2.10 and zookeeper version
>>>>>>>>> 3..4.6
>>>>>>>>>
>>>>>>>>> On Wed, Mar 9, 2016 at 2:19 PM, Cameron McKenzie <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> I think that you have a race condition between calling start() on
>>>>>>>>>> your cache and calling list(). Calling list() just checks the 
>>>>>>>>>> current state
>>>>>>>>>> of the cache. If it hasn't communicated with ZK yet, it won't have 
>>>>>>>>>> any
>>>>>>>>>> data. Try putting in a sleep after the cache.start() call, before 
>>>>>>>>>> you call
>>>>>>>>>> list().
>>>>>>>>>>
>>>>>>>>>> On Thu, Mar 10, 2016 at 9:16 AM, s influxdb <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> sure
>>>>>>>>>>>
>>>>>>>>>>> main class
>>>>>>>>>>>     RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000,
>>>>>>>>>>> 3);
>>>>>>>>>>>             client =
>>>>>>>>>>> CuratorFrameworkFactory.newClient("10.x.x.x", retryPolicy);
>>>>>>>>>>>             client.start();
>>>>>>>>>>>             SyncData sd = new SyncData(client);
>>>>>>>>>>>             sd.run();
>>>>>>>>>>>
>>>>>>>>>>> the class that calls cache
>>>>>>>>>>>
>>>>>>>>>>> private static final String PATH = "/zktest";
>>>>>>>>>>>
>>>>>>>>>>>     public void run () throws Exception
>>>>>>>>>>>        {
>>>>>>>>>>>         try {
>>>>>>>>>>>
>>>>>>>>>>>             cache = new PathChildrenCache(client, PATH, true);
>>>>>>>>>>>             cache.start();
>>>>>>>>>>>
>>>>>>>>>>>             list(cache);
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>                 for(;;) {
>>>>>>>>>>>                     try {
>>>>>>>>>>>                         Thread.sleep(50000);
>>>>>>>>>>>                     } catch(InterruptedException e) {
>>>>>>>>>>>                     }
>>>>>>>>>>>                 }
>>>>>>>>>>>
>>>>>>>>>>>             }
>>>>>>>>>>>              finally {
>>>>>>>>>>>                 CloseableUtils.closeQuietly(cache);
>>>>>>>>>>>              }
>>>>>>>>>>>         }
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Mar 9, 2016 at 1:30 PM, Cameron McKenzie <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> 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()));
>>>>>>>>>>>>>> >                }
>>>>>>>>>>>>>> >            }
>>>>>>>>>>>>>> >        }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>>
>
>

Reply via email to