
	     SOAP Tool Kit Manual Installation Instructions
	    ------------------------------------------------

 Before proceding, make sure that the following prerequisites have been met:

	1) The installed OpenVMS Version is 7.2-2 (or higher).
	2) Software Development Kit (SDK) for the Java Platform Version
	   1.3.1 (or higher) is installed, including any required OpenVMS
	   patches.
	3) The Java setup procedure has been executed.
	4) An ODS-5 enabled (recommended) disk is available and mounted.

 If you plan to configure this system as a Soap server, the following additional
 prerequisites must be met:

	5) Secure Web Server (SWS) for OpenVMS Alpha V1.2 (or higher) is
	   installed.
	6) CSWS_JAVA for Secure Web Server for OpenVMS Alpha V2.0 (or
	   higher) is installed.


 Determine the device and directory to use as the base directory.
 for the SOAP installation.  Create the directory and define the
 system wide concealed logical name SOAP$ROOT to equate to the
 rooted directory.  This definition should also be added to
 SYS$MANAGER:SYLOGICALS.COM.  For example:

	$ define/sys/nolog/trans=concealed SOAP$ROOT WORK$:[SOAP.]

 Create the directory SOAP$ROOT:[SOAP_Tools-1_1].

	$ create/dir/own=apache$www SOAP$ROOT:[SOAP_Tools-1_1]
	
 Set your default to SOAP$ROOT:[000000] and unpack the binary files,
 specifying the location where you unpacked the soap-tools-1_1.jar
 and the [.soap_tools-1_1] subdirectory.  For example:

	$ set default SOAP$ROOT:[000000]
	$ jar xf ODS5_DISK:[TEMP.soap_tools-1_1]soap_tools-bin-1_1.jar
        $ jar xf ODS5_DISK:[TEMP.soap_tools-1_1]SOAP-webapps-1_1.jar

				Notes
	All jar commands specify "xf" to extract the files. 
	Specify "xvf" if you want jar to log each file as it
	is copied.

	To properly preserve file names, particularly on an ODS-5
	disk, JAVA$FILENAME_CONTROLS should be defined /job such
	that multi-dot in file support is turned off (AND with
	%XFFCFFFFF, see JAVA$FILENAME_CONTROLS.COM).  In addition
	your process should be set to PARSE=EXTENDED and if
	supported, CASE_LOOKUP=SENSITIVE.
	
 If you are installing JavaScript support, also copy the following files
 to SOAP$ROOT:[soap-1_1.lib] :

	SOAP$ROOT:[BSF-1_0]bsf.jar
	SOAP$ROOT:[JS-1_1]js.jar

 If you are installing SOAP Server support, perform the following steps:

   1) Determine the location of your webapps directory
      (DEV$:[APACHE.JAKARTA.TOMCAT.webapps]) and copy
      SOAP$ROOT:[SOAP-1_1.webapps]soap.war to this directory.

   2) Expand the soap.war web archive by entering the following commands:

	$ create/dir DEV$:[APACHE.JAKARTA.TOMCAT.webapps.soap]
	$ set default DEV$:[APACHE.JAKARTA.TOMCAT.webapps.soap]
	$ jar xf DEV$:[APACHE.JAKARTA.TOMCAT.webapps]soap.war
	$ set file/owner=apache$www DEV$:[APACHE.JAKARTA.TOMCAT.webapps.soap...]*.*;*

   3) Add to or modify the APACHE$JAKARTA_USER_CLASSPATH definition in the
      APACH$WWW process's .TOMCATRC file (APACHE$ROOT:[000000].TOMCATRC.  This
      file may not exist, in which case you should create it.  It should contain
      a classpath definition similar to the following:

	$ xerces_path       := DEV$:[APACHE.JAKARTA.TOMCAT.common.lib]xerces.jar
	$ servlet_path      := DEV$:[APACHE.JAKARTA.TOMCAT.common.lib]servlet.jar
	$ soap_path         := SOAP$ROOT:[SOAP-1_1.lib]soap.jar
	$ act_path          := DEV$:[APACHE.JAKARTA.TOMCAT.common.lib]activation.jar
	$ mail_path         := DEV$:[APACHE.JAKARTA.TOMCAT.common.lib]mail.jar
	$ js_path           := SOAP$ROOT:[SOAP-1_1.lib]js.jar
	$ bsf_path          := SOAP$ROOT:[SOAP-1_1.lib]bsf.jar
	$ DEFINE APACHE$JAKARTA_USER_CLASSPATH -
	        'xerces_path,'servlet_path,-
	        'soap_path,'act_path,'mail_path,-
	        'js_path,'bsf_path,-
	        SOAP$ROOT:[SOAP-1_1]

				NOTE
	The order is important.  xerces.jar must be first, servlet.jar second.

	The js and bsf paths are not required if you do not want JavaScript
	support.


 Unpack any or all of the sample files using the following commands:

	$ jar xf ODS5_DISK:[TEMP.soap_tools-1_1]SOAP-samples-1_1.jar
	$ jar xf ODS5_DISK:[TEMP.soap_tools-1_1]BSF-samples-1_0.jar
	$ jar xf ODS5_DISK:[TEMP.soap_tools-1_1]JS-samples-1_1.jar

 Optionally unpack the client/server source files by issuing any or all 
 of the following commands:

	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]soap-src-1_1.jar
	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]BSF-src-1_0.jar
	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]JS-src-1_1.jar

 Optionally unpack the client/server documentation files by issuing any or all 
 of the following commands:

	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]soap-docs-1_1.jar
	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]BSF-docs-1_0.jar
	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]JS-docs-1_1.jar
	$ jar xf ODS5_DISK:[TEMP.Soap_Tools-1_1]JSSE-docs-1_1.jar


 It is recommended that you set the ownership of the entire SOAP$ROOT:
 directory tree to APACHE$WWW.  You should also insure that the
 webapps directory and the soap subdirectory is owned by APACHE$WWW.


A context statement should be added to server.xml to expose the SOAP
application:

  <!-- Added for SOAP -->

           <Context path="/soap" docBase="soap.war" debug="0"
                 reloadable="true" crossContext="true">
           <Listener className="org.apache.ajp.tomcat4.config.ApacheConfig"
                 append="true" />
           <Logger className="org.apache.catalina.logger.FileLogger"
                     prefix="localhost_soap_log." suffix=".txt"
                 timestamp="true"/>
          </Context>


 CSWS_JAVA must be restarted to create the webapps aliases, afterwhich,
 SWS must be restarted to pick up the aliases.

            $ @SYS$STARTUP:APACHE$JAKARTA_SHUTDOWN
            $ @SYS$STARTUP:APACHE$JAKARTA_STARTUP

	    $ @SYS$STARTUP:APACHE$STARTUP GRACEFUL

				Notes
        After entering the APACHE$JAKARTA_SHUTDOWN command you should wait until
        the APACHE$TOMCAT process exits before entering the
        APACHE$JAKARTA_STARTUP command.

	After entering the APACHE$JAKARTA_STARTUP command, you should wait until
	the APACHE$TOMCAT enters the HIB (Hibernate) state before entering the
	APACHE$STARTUP command.



You may wish to create a SOAP_KIT.CONF file containing "alias" and "directory"
statements and add an "include" statement to APACHE$COMMON:[CONF]HTTPD.CONF to
include SOAP_KIT.CONF, in order to define the access to the documentation
directories. for example:

	   SOAP_KIT.CONF:

		Alias /soaptools/ "/SOAP$ROOT/SOAP_Tools-1_1/"

		<Directory "/SOAP$ROOT/SOAP_Tools-1_1/">
		        Options FollowSymLinks
		        AllowOverride None
		</Directory>

	   HTTP.CONF:

		Include /SOAP$ROOT/SOAP_Tools-1_1/SOAP_KIT.CONF



You may also wish to create a web page providing links to the documentation.

