JavaSpacesTestAnn.zip doc_07-08-2008_nb6.5m1.zip net-jini_release6.1.nbm net-jini_release6.5m1.nbm org-dancres-blitz_release6.1.nbm org-dancres-blitz_release6.5m1.nbm org-netbeans-junit_release6.1.nbm org-netbeans-junit_release6.5m1.nbm pl-edu-mimuw-md209461-javaspaces-debugger_release6.1.nbm pl-edu-mimuw-md209461-javaspaces-debugger_release6.5m1.nbm
Introduction
JavaSpaces Netbeans project started at the Faculty of Mathematics, Informatics and Mechanics, Warsaw University as an assignment for Multi-tier applications development (Tworzenie aplikacji wielowarstwowych) lead by Jacek Sroka. The original idea of the project also came from Jacek Sroka. The project was developed as my Master's Thesis (2007/2008) and supervised by Marcin Engel.
This work is supported by the Netbeans Dream Team and Sun Microsystems as a part of Netbeans Innovators Grant process. See project's status on the official Netbeans wiki: grant project's status.
Links:
- Magdalena Dukielska
- Jacek Sroka
- Marcin Engel
- Netbeans Innovators Grant
- Work progress for Netbeans Innovators Grant
- A mailing list for developers
- JavaSpaces Netbeans on Netbeans Plugin Portal
Most recent deliverables for current release nb6.5m1/release nb6.1:
- Sources from 07-08-2008, Netbeans 6.5m1
- NBMs from 07-08-2008, Netbeans 6.5m1
- NBMs from 07-08-2008, Netbeans 6.1
- A presentation showing the project in action on Netbeans 6.5m1
- Javadocs from 07-08-2008, Netbeans 6.5m1/6.1
- Basic Netbeans help for the project available at Help -> Help contents -> IDE Basics -> Servers and Databases -> Servers -> Blitz JavaSpaces server
Note: releases nb6.1 and nb6.5m1 are based on exactly the same source code - the only difference between them is in classpath. For details see Installation guide.
Wiki:
- User manual recorded with Wink 2.0
- Installation guide
- Results of unit tests
- Netbeans Innovators Grant submission
- Possible extensions of the project
Overview
JavaSpaces Netbeans project is aimed mainly at students of Computer Science learning Linda concepts. The goal of the project is to provide a set of plugins for Netbeans IDE that turn working with JavaSpaces into a pleasure and make it easy even for Java beginners. When using JavaSpaces Netbeans one can concentrate on logic of the program instead of tinkering with the technology itself.
All Computer Science students of Warsaw University have to learn Linda as a part of an obligatory course (Concurrent and Distributed Programming). Thanks to JavaSpaces Netbeans project the way Linda is taught will change dramatically - instead of solving problems on the blackboard or pieces of paper students will be able to program their solutions in Java and Netbeans IDE. Besides, they will be able to test their programs with the help of a specialized debugger.
JavaSpaces have been around for quite a long time, yet they are not widely used - mainly because of their crude interfaces for administering tuplespace instances and complicated configuration. Despite this, as one of Linda implementations they are a very interesting and powerful technology which facilitates writing distributed and concurrent programs. Processes operating on tuplespaces created in JavaSpaces avoid many problems related to synchronization and data exchange. Thanks to dynamic code downloading, through a JavaSpace we can pass not only data but also behaviour among groups of processes, possibly operating on different machines in the network. This feature makes JavaSpaces much more expressive than plain Linda.
Configuring and running JavaSpaces by hand is a complicated problem - they require lots of work to set everything up. And once something doesn't work correctly, you need expert knowledge about Jini, RMI and JavaSpaces itself to fix the problem. At the same time, if we forget about tiresome configuration and untidy Jini code necessary to get hold of JavaSpace instances, JavaSpaces programs turn out to be extraordinarily simple. The example code written in the environment provided by the JavaSpaces Netbeans project is very simple. What is even more important, it can be run with no more effort that running a typical Java application with a main method.
Thanks to the functionality JavaSpaces Netbeans project provides, you can not only run and test famous Dining Philosophers problem, but also write a complex compute server - a distributed computing environment that is incredibly scalable and extensible in comparison to traditional interprocess communication techniques like RPC.
Useful tips
- Blitz
- Inca-X
- JINI
- JDPA
- Spring support for JavaSpaces
News
- 07-08-2008 Basic Netbeans help added and available at Help -> Help contents -> IDE Basics -> Servers and Databases -> Servers -> Blitz JavaSpaces server
- 03-08-2008 The project is published on Plugin Portal
- 29-07-2008 Nbms for release nb6.5m1 are available at Downloads
- 19-07-2008 Javadocs for nb6.5m1 release are available at Downloads
- 14-07-2008 Project works on NB 6.5m1, All unit tests pass on NB 6.5m1
- 18-05-2008 User manual created by Wink 2.0 (English)
- 14-04-2008 Netbeans Innovators Grant results!
- 09-04-2008 Solutions of 5 philosophers and readers/writers problems are available at JavaSpacesTestAnn.zip
- 13-03-2008 Installation
- 13-03-2008 JavaSpaces without an IDE (Polish)
- 09-03-2008 User manual created by Wink 2.0 (Polish)
- 28-10-2007 Plan of my Master's Thesis (Polish)
- 07-10-2007 New Tree Table entries browser introduced
- 08-09-2007 Run on sever option available!
- 09-08-2007 Codebase problem solved!
- 08-08-2007 Codebase information available on wiki
- 01-08-2007 Nmb's for the nb5.5.1 release are available at Downloads
- 01-08-2007 Source code for the whole project available in repository