First, retrieve the project using Subversion. The instructions to get started are in the README.md file at the top level of the project repository. Basically, you need to checkout the project using svn, then build the project using Maven.
Once the project is built, the tutorial starting point will be in target/site/index.html Cheers, Greg Trasuk On Apr 8, 2015, at 3:30 AM, Bishnu Gautam <bishn...@hotmail.com> wrote: > > Hi GregThanks for the link. Sorry, I could not find the tutorial about > hello-service. Did I miss something from the link below. However, there was > the GreeterService.java file. > RegardsBishnu > > > Bishnu Prasad Gautam > > >> From: tras...@stratuscom.com >> Subject: Re: River-examples project - followup >> Date: Tue, 7 Apr 2015 09:45:46 -0400 >> To: dev@river.apache.org >> >> >> http://svn.apache.org/repos/asf/river/river-examples/river-examples/trunk is >> the public svn folder. >> >> Cheers, >> >> Greg Trasuk. >> >> On Apr 7, 2015, at 12:13 AM, Bishnu Gautam <bishn...@hotmail.com> wrote: >> >>> >>> Hi Greg >>> Could you send me the SVN info to download the tutorials and other >>> information that you updated. It would be great if you send me those >>> information. >>> RegardsBishnu >>> >>> Bishnu Prasad Gautam >>> >>> >>>> Subject: Re: River-examples project - followup >>>> From: tras...@stratuscom.com >>>> Date: Mon, 6 Apr 2015 21:56:14 -0400 >>>> To: dev@river.apache.org >>>> >>>> >>>> Hi all: >>>> >>>> I updated the tutorial to include the discussion below in the >>>> “hello-service” module. ‘svn up’ should bring it down to your local >>>> machine. I haven’t yet integrated Patricia’s formatting suggestions, >>>> mainly because I have to dig in to Maven’s site command a bit to include >>>> the correct css, but I’ll do that before we release. >>>> >>>> Any feedback is greatly appreciated. >>>> >>>> Cheers, >>>> >>>> Greg Trasuk >>>> >>>> On Apr 6, 2015, at 3:30 PM, Greg Trasuk <tras...@stratuscom.com> wrote: >>>> >>>>> >>>>> Hi Dan: >>>>> >>>>> Thanks for the great feedback. >>>>> >>>>> I’m pretty sure you already know this, Dan, since you’re a long-time Jini >>>>> user, but let me explain for the newer folks and the archives. This is a >>>>> case where what you’re seeing is the expected behaviour. When the >>>>> service registers itself with Reggie, it takes out a lease on the >>>>> registration. That lease is usually renewed periodically by the service’s >>>>> JoinManager (that isn’t quite the whole story, but it’ll do for now). >>>>> When you kill the service unexpectedly with ctrl-c, the service doesn’t >>>>> de-register itself, however the lease eventually runs out (now that it’s >>>>> not being renewed by the service) and then the registration expires, >>>>> allowing Reggie to reclaim its resources and notify any registrar >>>>> listeners. >>>>> >>>>> It would be possible to register a vm shutdown hook to de-register the >>>>> service before the vm exits, but in this case I think it’s actually >>>>> better to leave it out, since it demonstrates nicely that a dead service >>>>> (or at least a dead JoinManager) eventually gets dropped from the >>>>> registrar. >>>>> >>>>> You said the duplicate service instances “worked”, in that you can show >>>>> info and browse the service, but of course, you’re really just looking at >>>>> the information that’s in the registry - the registrar and service >>>>> browser don’t actually contact the service. Reggie has no knowledge of >>>>> the “liveness” of the service, and doesn’t attempt to do any “health >>>>> check”. >>>>> >>>>> In fact, it’s a common misconception that if the service renews the >>>>> lease, it must be “live”. This turns out to be false for many reasons. >>>>> (1) The service could have delegated its lease renewals to a different >>>>> service. (2) There’s no guarantee that failure of the actual service >>>>> thread would also cause failure of the lease renewal thread, even if they >>>>> are in the same process (embedded programmers might recognize this as >>>>> being similar to the “resetting the watchdog in a timer-triggered >>>>> interrupt service routine” problem). (3) Even if there were a health >>>>> check task, the service could fail in the instant just after the health >>>>> check. The most a health check, monitor or heartbeat can do is place a >>>>> limit on how long it takes to find out a service has failed. The only >>>>> way to say with certainty that a service “works” is to attempt to use it. >>>>> >>>>> The lease is purely for the convenience of the registrar (or generically, >>>>> the service granting the lease). If ever the lease is not renewed, the >>>>> landlord can go ahead and reclaim whatever resources were dedicated to >>>>> the lease. In the case of Reggie, if the lease isn’t renewed, Reggie >>>>> drops the registration. So there’s little risk of “stuck registrations”. >>>>> And since the lease can be renewed, there’s no need for any kind of >>>>> extended default timeout. >>>>> >>>>> So, I think I’ll put most of the above explanation into the tutorial, >>>>> unless anyone has other thoughts. >>>>> >>>>> Cheers, >>>>> >>>>> Greg Trasuk >>>>> >>>>> On Apr 6, 2015, at 1:42 PM, Dan Rollo <danro...@gmail.com> wrote: >>>>> >>>>>> Hi Greg, >>>>>> >>>>>> I finally took some time to try this out. It really looks great to me! >>>>>> >>>>>> I noticed one minor thing that I thought might confuse users: While >>>>>> going through tutorial steps, I decided to stop (via cntrl+c) are >>>>>> restart the hello-service a couple times. This resulted in the service >>>>>> being shown multiple times in the service browser (screenshot attached). >>>>>> It appeared all the duplicate instances in the browser “worked” (I could >>>>>> “show info” and “browse service” on all of them). Eventually, the >>>>>> duplicate registrations “cleaned up” and I was left with just one. I’m >>>>>> not sure how best to avoid confusion about this situation. Would more >>>>>> doc about “why”/“how” that works just complicate things? Is there any >>>>>> sort of “force lease check” to do in the browser that could clear up the >>>>>> duplicates sooner? (And if so, would that be worth noting in the >>>>>> tutorial?). So basically, not sure this is a “problem”, but thought I’d >>>>>> ask… >>>>>> >>>>>> Thanks! >>>>>> Dan >>>>>> >>>>>> <revier-examples-RepeatedService.png> >>>>> >>>> >>> >> >