                       Sun Java(tm) System Message Queue 
                      JMS Reference Implementation Source
                                    README
                      -----------------------------------
                          Last updated: 01 Mar 2006

This document provides a quick reference to the Sun Java(tm) System Message 
Queue JMS reference implementation source bundle.  It contains following
sections:

OVERVIEW OF THE RI SOURCE
REQUIREMENTS FOR BUILDING JMS RI SOURCE
J2EE INTEGRATION NOTES
HOW TO BUILD AND RUN THE RI ON SOLARIS
HOW TO BUILD AND RUN THE RI ON LINUX
HOW TO BUILD AND RUN THE RI ON WIN32

=========================
OVERVIEW OF THE RI SOURCE
=========================

The JMS reference implementation source is contained in a single zip
file named "imq4_0-ri-src.zip". This source bundle is derived from the
Sun Java(tm) System Message Queue (TM) product source code.

Documentation for the latest Sun Java(tm) System Message Queue product 
release can be found on the following web site:

    http://docs.sun.com/?p=/coll/S1_MessageQueue_301

This documentation can also be used for the JMS reference
implementation.

The "imq4_0-ri-src.zip" file contains the following top level
components :

README  : This file.
src/    : The source directory

Following source subdirectories are noteworthy :

JMS 1.1 API source code     : src/share/java/javax/jms/
Administration utilities    : src/share/java/com/sun/messaging/jmq/admin/
JMS API implementation      : src/share/java/com/sun/messaging/jmq/jmsclient/
JMS broker implementation   : src/share/java/com/sun/messaging/jmq/jmsserver/
Build configuration         : src/buildcfg/
Solaris CLI wrapper scripts : src/solaris/
Windows native wrapper apps : src/win32/svc/

=======================================
REQUIREMENTS FOR BUILDING JMS RI SOURCE
=======================================

The JMS RI source code can be built on Solaris, Windows 2000 or RedHat
Linux AS 3.0 or AS 4.0 systems.  The common build requirement for all 
platforms is gnumake version 3.77 or better.

You will also need MKS tools to build the source on Windows 2000
platform.

The JMS RI source bundle contains some pre-built native Windows 2000
application binaries that act as command line wrappers for various MQ
commands.  The source bundle also contains the native source code for
these applications and it can be optionally compiled using MSVC++ 6.0
compiler.  However the default build rules do not require the native
compiler.

======================
J2EE INTEGRATION NOTES
======================

1. If you are using the public JMS RI binaries (generated by the MQ
   engineering team), by default the file system based persistence
   store will be used. File system based persistence store does not
   require any additional configuration procedure. It should work out
   of the box.

======================================
HOW TO BUILD AND RUN THE RI ON SOLARIS
======================================

BUILD PROCESS :

1. set ALT_JAVAHOME to a JDK1.5.0.
2. Add 'gnumake' to your $PATH.
3. cd $TOP/src; type 'gnumake'

HOW TO RUN :

4. Edit the file $TOP/dist/solaris-ri/etc/imqenv.conf to set
   IMQ_DEFAULT_JAVAHOME to a JDK1.5.0.
5. cd $TOP/dist/solaris-ri/bin; 
6. Start the broker:
        ./imqbrokerd -tty -name domain1_server1

7. To run JMS client applications, include the following jar files in
   the classpath :
        $TOP/dist/solaris-ri/lib/jms.jar
        $TOP/dist/solaris-ri/lib/imq.jar

====================================
HOW TO BUILD AND RUN THE RI ON LINUX
====================================

BUILD PROCESS :

1. set ALT_JAVAHOME to a JDK1.5.0  
2. Add 'gnumake' to your $PATH.
3. cd $TOP/src; type 'gnumake'

HOW TO RUN

4. Edit the file $TOP/dist/Linux-ri/etc/imqenv.conf to set
   IMQ_DEFAULT_JAVAHOME to a JDK1.5.0.
5. cd $TOP/dist/Linux-ri/bin; 
6. Start the broker:
        ./imqbrokerd -tty -name domain1_server1

7. To run JMS client applications, include the following jar files in
   the classpath :
        $TOP/dist/Linux-ri/lib/jms.jar
        $TOP/dist/Linux-ri/lib/imq.jar

====================================
HOW TO BUILD AND RUN THE RI ON WIN32
====================================

BUILD PROCESS :

1. set ALT_JAVAHOME to a JDK1.5.0  
2. set ZIPDIR to a directory that contains the zip.exe utility.
3. Add 'gnumake' to your %PATH%.
4. MKS must be installed and build uses NUTCROOT (set by MKS
   installation).  sh.exe must be in path.
5. cd $TOP/src; type 'gnumake'

HOW TO RUN :

6. Edit the file $TOP\dist\win32-ri\etc\imqenv.conf to set
   IMQ_DEFAULT_JAVAHOME to a JDK1.5.0.
7. cd $TOP\dist\win32-ri\bin; 
8. Start the broker:
        ./imqbrokerd -tty -name domain1_server1

9. To run JMS client applications, include the following jar files in
   the classpath:
        $TOP\dist\win32-ri\lib\jms.jar
        $TOP\dist\win32-ri\lib\imq.jar

