Jan Newmarch's Guide to JINI Technologies
Jan: It would be useful if you could include a general introduction here explaining what people will need in order to be able to use this book. For example, it seems to presume a good working knowledge of Java and networking. Also, it would help to start off with a brief explanation of what Jini is—nothing so detailed as in chapter 1, but something explaining that it comes from Sun, that it is a networking architecture (or however you want to describe it), and perhaps briefly outline how it compares to other similar products/solutions (such as CORBA). And it would be good to explain briefly what is in the book—the sort of topics you will cover, and the fact that it is a hands-on study-the-code type book, rather than being a theoretical book on general concepts. None of this really needs to be very detailed—it just has to help readers know whether this is the right book for them. Andy
Jan: What version of what are you referring to below? Andy
This version uses Jini 1.1 (alpha). For a version using Jini 1.0, see http://pandonia.canberra.edu.au/java/jini/tutorial.1.03/Jini.xml.
Jan: I’ve deleted the table of contents that was here. It will be recreated from the text when the book goes into production. Andy
Files
Jan: Are these files going to be put on a CD to go with the book, or are they going on the Apress web site, or on your site? I’m not sure about these details, but in any case, readers will need to be directed to them, either by mention of the CD or by giving URLs. Andy
The source for the programs in the book is available as a zip file: programs.zip. The compiled classes are available as a zip file: classes.zip.
Jan: In the second sentence below, you mean HTML versions of what files? What documentation files are these? If these are the book files, is this still accurate? Andy
The documentation files are also available as a zip file. This includes HTML versions of the files. I am using XML as document format, with a mishmash of the DocBook DTD with extra tags and HTML thrown in. A Perl program, xml_handler.pl, is a handler called by my Apache Web server to deliver XML files as HTML.
Postscript versions of the documentation files are available in postscript.zip. These are generated using html2ps, and I know this produces Postscript that does not print on all printers—in particular, our Kyocera printers. If you have problems printing these files, let me know the solution if you have one. Please note that the copyright license allows you to make single printed copies for your own use, but not multiple printed copies.
Update Information
Jan: Presumably this should be updated for the book version, particularly if it is on a CD. Andy
This tutorial will be updated on a regular basis, maybe several times a week. If you want to receive an e-mail announcement of each version release, send an e-mail to jan@ise.canberra.edu.au with subject “Jini tutorial update'”.
Feedback
I would appreciate feedback on this tutorial to ensure that it is correct and meets the needs of readers. The feedback that I have already received has been very valuable. Please send comments, corrections, requests, etc., to jan@ise.canberra.edu.au.
Other Resources
*	The Jini FAQ: http://www.artima.com/jini/faq.html
*	Jini Community Web site: http://www.jini.org/
*	Noel Enete’s “Nuggets'' tutorial: www.enete.com/download/#_nuggets_
*	Eran Davidov’s timeservice example: www.artima.com/jini/resources/timeservice.html
*	Roger Whitney’s lecture notes on “Java Distributed Computing”: http://www.eli.sdsu.edu/courses/spring99/cs696/notes/
*	Benot Marchal’s articles for Digital Cat’s Java Resource Center: www.javacats.com/US/articles/Ben/Jini1.html (and Jini2.html, Jini3.html, etc.)
*	Jini home page: http://www.sun.com/jini/index.html
*	RMI home page: http://java.sun.com/products/jdk/rmi/index.html
*	Jini mailing list: jini-users@java.sun.com
*	Jini mailing list archives: http://archives.java.sun.com/archives/jini-users.html
*	RMI mailing list: rmi-users@java.sun.com
*	RMI mailing list archives: http://archives.java.sun.com/archives/rmi-users.html
*	Jini Interface Repository for standardized service interfaces (empty at present): http://www.artima.com/jini/interrepo/
Jan: Is the preceding “empty at present” still accurate? Andy
Changes
See the Changes file for the list of version releases and changes made between versions.
Jan: Presumably this needs a URL, or it should be included on the CD if that’s how it’s being done. Andy
Copyright Information
Jan: This will presumably be replaced with a standard Apress legal statement. Andy
This tutorial (and the pages it contains) are covered by the OpenContent license. This basically gives you freedom to do what you want with the document in a similar way to the GNU license for software. Any changes or additions that you make to this set of pages as a Web document must be made publicly available, and may be folded into later versions of this tutorial. Any such inclusions will of course be credited with your copyright, under the OpenContent license.
On the other hand, the programs that this tutorial references are also available unbundled from the tutorial, and do not have the restriction that source derived from them must be made publicly available. So you can derive your own source code from them, without having to make it public. I'm not sure what suitable license will do this...
And, of course, there is no warranty...
Acknowledgements
The author is grateful for comments on this tutorial from
Brian Jeltema, jeltema@richdist.east.sun.com
Roger Whitney, whitney@cs.sdsu.edu
Robbert van den Beld, rbe@mms-dresden.de
Chitrarasu Muthaiyan, chitrarasu@cswl.com
Stuart Remphrey, Stuart.Remphrey@Aus.Sun.COM
JJ Larrea, jlarrea@redtop.com
John McClain, John.McClain@East.Sun.COM
Bob Scheifler, rws@east.sun.com
The author is currently on a sabbatical program at the CRC for Distributed Systems Technology, http://www.dstc.edu.au, and the work reported in this tutorial has been funded in part by the Co-operative Research Centre Program through the Department of Industry, Science and Tourism of the Commonwealth Government of Australia.