-----------------------------------------------------------------------

	"@(#)README 3.6 99/03/23 SMI"

	Copyright (c) 03/23/99, by Sun Microsystems, Inc.
	All rights reserved.

-----------------------------------------------------------------------

			JDBC Example
			============


-----------------------------------------------------------------------
1. Example overview
-----------------------------------------------------------------------
This example shows how a persistent repository can be implemented
on top of a database. The repository uses the JDBC API to access
the database.

The current directory contains the following source files:
   * Agent.java:
 	- Implements a basic agent application.
	- Initializes the framework with a repository implementing JDBC.
        - Checks if there are m-beans present at startup time and activate
          them if they implement the ActivatableIf.
	- Adds the HTTP, HTML and RMI adaptors to the framework persistent.
        - Adds the MetaData, Launcher and Discovery services to the
          framework persistent.
          
   * JDBCRepositorySrv.java:
        - Simple implementation of an object repository.
        - Offers persistency through JDBC.
        
   * RegistryTable.java:
        - Provides a basic service for managing a registry table in a database.

   * DomainTable.java:
        - Provides a basic service for managing a domain table in a database.

   * Table.java:
        - Provides a basic service for managing database tables.

   * SerializationConvertion.java:
        - Serialize and deserialize objects from and to byte arrays.
        
   * SerializationInputStream.java:
        - Subclass of ObjectInputStream implementing the resolveObject method.

   * SerializationOutputStream.java:
        - Subclass of ObjectOutputStream implementing the replaceObject method.
        
   * SerializationMarker.java:
        - Used to mark the position of the framework in a serialization stream.


-----------------------------------------------------------------------
2. Building and running the example
-----------------------------------------------------------------------
To build the jdbc example, copy the example source files to your
working directory and type the following commands:

   cd <WORKING_DIR>

   # Set the CLASSPATH environment variable to specify
   # the root of the class distribution for the JDBC:

   # Running the example on a Solaris platform:
   setenv CLASSPATH ${CLASSPATH}:<JDBC_CLASSES>
-or-
   # Running the example on a Windows platform:
   set CLASSPATH=%CLASSPATH%;<JDBC_CLASSES>

   javac -d . *.java


To run the version of the example you have just built, type the
following commands:

   # Make sure that no agents are already running 
   # and start the agent:

   java Agent


NOTE:
     When using the Cloudscape JBMS database with JDK 1.2
     bundled with Solaris disable the JIT compiler
     by setting the environment variable JAVA_COMPILER,
     for example:

	Using the jdbc example on a Solaris platform:
		% setenv JAVA_COMPILER NONE

	Using the jdbc example on a Windows platform:
		C:\> set JAVA_COMPILER=NONE

     This is to avoid problems caused by the JIT compiler when
     using the Cloudscape JBMS database.
