Given by TangoInteractive Team at Tango Tutorial Alliance 98 NCSA Illinois on April 27 98. Foils prepared April 25 98
Outside Index
Summary of Material
This is still under development but represents the most elegant way of building collaborative Java applets |
We review JavaBeans which are Java's component model |
We discuss the current TangoBean architecture and illustrate process with a simple example where applets has two buttons -- On and Off |
Outside Index Summary of Material
Presented by Geoffrey Fox, Marek Podgorny and TANGO team |
NPAC, Syracuse University |
Alliance `98, April 27th, `98 |
This is still under development but represents the most elegant way of building collaborative Java applets |
We review JavaBeans which are Java's component model |
We discuss the current TangoBean architecture and illustrate process with a simple example where applets has two buttons -- On and Off |
They are Java's implementation of "component-based" visual programming |
This modern software engineering technique produces a new approach to libraries which become a "software component infrastructure(SCI)" |
There is a visual interface to discovery of and setting of values of and information about parameters used in a particular software component |
JavaBeans uses the event model of JDK1.1 to communicate between components |
One expects Javabeans to become the CORBA component interface (defining containers in CORBA) |
Enterprise Javabeans are extremely important server side version which are the Java way of building reuseable middleware |
The visual interface allows inspection of and implementation of both individual beans and their linkage . This visual construction of linkage allows one to form nontrivial programs with multiple communicating components |
Apart from the event mechanism which is a communication/linkage mechanism, ComponentWare (and JavaBeans in particular) "just" give a set of universal rules (needed for interoperability) for rather uncontroversial (albeit good) object-oriented and visual programming practices
|
Javabeans expose the interesting events and properties and the user can use this in a design environment such as Visual Café to decide how to share these exposed elements |
Set of JavaBeans integrated with Tango which Support
|
Enables easy automatic construction of collaborative applications using visual tools such as Visual Cafe |
Universal interface - arbitrary types of objects may be transferred |
There are System TangoBeans (JavaBeans supporting Tango runtime) enabling the functioing of user TangoBeans |
Tango Bean |
Integrates applet with Tango |
Executes control operations on applet |
Accepts new pipes |
Routes messages to pipes |
Accepts messages from Pipes |
Accepted Events |
PipeConnectEvent |
from pipe that is ready to be connected |
TangoBean |
TANGO |
ObjectPipes |
System TangoBean |
User TangoBeans |
Designer's view of the TangoBean |
ObjectPipes |
User view of this TangoBean |
ObjectPipe |
Communication channel |
Must be connected to TangoBean |
Accepts Serializable objects |
Methods
|
Generated Events
|
Accepted Events
|
ObjectPipes send objects |
travelling through them |
(which can be data or events) |
to the system TangoBean |
which replicates them to |
all involved clients |
TangoBean |
ObjectPipe |
to TANGO |
from TANGO |
User1 |
User2 |
Design time
|
Run-time - testing environment
|
Run-time - Tango environment
|
Install Tango beans in your IDE |
Design applet using Tango beans and other available components |
Generate applet |
Add Netscape security calls |
public void init() {
|
} |
Add notification about applet destruction |
public void destroy() { |
tangoBean1.appletDestroyed(); |
super.destroy(); |
} |
Sign applet and all used Tango beans as one package |
Create JAR file |
Add applet to Tango applications |
Java IDE or JDK |
Netscape Communicator with AWT 1.1 |
Digital signature |
Tools for package signing and JAR generation from Netscape - signtool |