Content area
Full text
What the JSDT can and can't do for you
The Java Shared Data Toolkit (JSDT) is a freely available class library from Sun Microsystems designed to help you write collaborative applications. Distributed collaborative systems, sometimes referred to as groupware or multiuser applications, let groups of users work simultaneously on a common task. Typical collaborative apps include workflow management systems, distance learning, video conferencing, and the like. (At VocalTec, the company I work for, we are developing a system that lets you surf the Web with another person while talking with him/her over IP telephony.) At this writing, the current release is JSDT 1.5, although 2.0 is in Beta. The JSDT is not a standard Java extension (with a javax package name); instead, it is an independent toolkit from Sun (with a com.sun package name)one of the Java Media APIs. The JSDT works with Java 1. Lx, 1. 2.x, and 1.3, and is available at http://java.sun.com/products/ java-media/jsdt/index. html. Note that, while the JSDT is free, source code is not currently available.
The JSDT's strength is in grouping participants according to dynamic criteria set by the participants themselves. For instance, how do you make sure that Alice plays chess with Bob (both are masters), while Carol plays checkers with Doug, without sending Bob's chess moves into the Carol-Doug face-off? And what if Alice wants to switch to checkers, or play a number of simultaneous chess matches? This is the sort of problem that the JSDT is designed to solve.
The JSDT helps you determine who talks with whom. Yet the very nature of collaboration, in which distributed systems are combined with multiple user interfaces, means that the JSDT cannot solve all the problems of collaboration for you.
In this article, I'll discuss the problems that JSDT can solve for you, the problems it fails to address, and problems that remain as an inevitable part of developing collaborative systems.
JSDT Transport Layers
The JSDT runs over network transport layers that pass infon-nation between two participants, while the JSDT coordinates the participants. The JSDT comes with a number of these transport layers (called "implementations"), namely TCP and UDP sockets, HTTP, and the Lightweight Reliable Multicast Protocol LRMP); see http://webcanal.inria.fr/lrmp/index.html for a description of this protocol, and to...





