husted 01/02/13 08:01:02
Modified: src/doc installation.xml
Log:
(Submitted by Ted Husted). Add Silverstream instructions.
Revision Changes Path
1.12 +270 -228 jakarta-struts/src/doc/installation.xml
Index: installation.xml
===================================================================
RCS file: /home/cvs/jakarta-struts/src/doc/installation.xml,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- installation.xml 2001/02/11 21:35:43 1.11
+++ installation.xml 2001/02/13 16:01:02 1.12
@@ -7,6 +7,7 @@
<author>Ted Husted</author>
<author>Robert Hayden</author>
<author>Wong Kok Kai</author>
+ <author>John Rousseau</author>
<title>The Struts Framework Project - Installation</title>
</properties>
@@ -17,6 +18,7 @@
<p>In order to build a Struts source distribution, or install and use a
Struts binary distribution, you will need to acquire and install several
other software packages, as follows:</p>
+
<ul>
<li><strong>Java Development Kit</strong> - You must download and install
a Java2 (version 1.2 or later) Java Development Kit implementation for
@@ -72,7 +74,6 @@
</section>
-
<section name="Building Struts From Source" href="Building">
<p>First, download a source distribution of Struts by following the
@@ -99,9 +100,11 @@
directory to the directory in which you have unpacked the Struts
source distribution, and then type one of the following commands (based
on whether you are running on a Unix or Windows platform):</p>
+
<pre>./build.sh dist <-- Unix platform
build dist <-- Windows platform
</pre>
+
<p>This command will create a binary distribution of Struts, in a
directory named <code>dist</code> (relative to where you
are compiling from). This directory contains an exact replica of the
@@ -122,6 +125,7 @@
(If you build Struts from the source distribution, the result of the
build will already be an unpacked binary distribution for you). The
distribution consists of the following contents:</p>
+
<ul>
<li><strong>lib/struts.jar</strong> - This JAR file contains all of the
Java classes included in Struts. It should be copied into the
@@ -154,6 +158,7 @@
<p>To use Struts in your own application, you will need to follow
these steps:</p>
+
<ul>
<li>Copy the file <code>lib/struts.jar</code> from the Struts distribution
into the <code>WEB-INF/lib</code> directory of your web application.
@@ -170,6 +175,7 @@
<li>Modify the <code>WEB-INF/web.xml</code> file of your web application
to include the following tag library declarations:</li>
</ul>
+
<pre><taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
@@ -190,6 +196,7 @@
<taglib-location>/WEB-INF/struts-template.tld</taglib-location>
</taglib>
</pre>
+
<ul>
<li>Create a file <code>WEB-INF/struts-config.xml</code> that defines the
action mappings and other characteristics of your specific application.
@@ -199,63 +206,66 @@
add line(s) declaring the Struts custom tag libraries used on
this particular page, like this:</li>
</ul>
+
<pre><@ taglib uri="/WEB-INF/struts-bean.tld" prefix="struts-bean" %>
<@ taglib uri="/WEB-INF/struts-form.tld" prefix="struts-form" %>
<@ taglib uri="/WEB-INF/struts-logic.tld" prefix="struts-logic" %>
<@ taglib uri="/WEB-INF/struts-template.tld" prefix="struts-template" %>
</pre>
+
<ul>
<li>When compiling the Java classes that comprise your application, be sure
to include the <code>struts.jar</code> file (copied earlier) on the
CLASSPATH that is submitted to the compiler.</li>
</ul>
+</section>
- </section>
+<section name="Installing Struts with your servlet container" href="Containers">
- <section name="Installing Struts with your servlet container" href="Containers">
-
- <p>For most containers, you need only to: </p>
-
- <ul>
- <li>Copy the WAR files in your Struts <code>/webapp</code> directory to your
containers
- <code>webapps</code> directory. </li>
+<p>For most containers, you need only to: </p>
+
+<ul>
+ <li>Copy the WAR files in your Struts <code>/webapp</code> directory to your
+ containers <code>webapps</code> directory. </li>
<li>In some cases, you may need to restart your container if it is running.</li>
- </ul>
+</ul>
- <h3>Status of various containers -- as reported by volunteers on the Struts-User
list:</h3>
+<h3>Status of various containers -- as reported by volunteers on the Struts-User
list:</h3>
- <ul>
+<ul>
<li>Tomcat 3.1+ "standalone" - No additonal steps required.</li>
<li>Resin 2.1+ "standalone" - No additional steps required.</li>
<li>WebLogic 6.0+ - No additional steps required.</li>
- </ul>
- <ul>
- <li>Bluestone Universal Business Server - <a href="#bluestone">Additional steps
provided below.</a></li>
+</ul>
+
+<ul>
+ <li>Bluestone Universal Business Server - <a href="#bluestone">Additional steps
+ provided below.</a></li>
<li>Orion Application Server - <a href="#orion">Additional steps provided
below.</a></li>
- <li>Tomcat 3.1+ with Apache - <a href="#tomcat_apache">Additional steps provided
below.</a></li>
+ <li>Silverstream - - <a href="#silverstream">Additional steps provided
below.</a></li>
+ <li>Tomcat 3.1+ with Apache - <a href="#tomcat_apache">Additional steps provided
+ below.</a></li>
<li>Weblogic 5.1 (sp8) - <a href="#wls6">Additional steps provided below.</a></li>
- </ul>
- <ul>
+</ul>
+
+<ul>
<li>JRUN - Determination pending.</li>
<li>Websphere - Determination pending.</li>
- </ul>
-
- <h4><a name="bluestone">Bluestone Universal Business Server</a></h4>
-
- <ul>
- <li>You need UBS version 7.2 to run war file applications. The UBS
7.2.2 evaluation is
- located <a
href="http://www.bluestone.com/SaISAPI.dll/SaServletEngine.class/products/downloads.jsp">here</a>.
- If you're using version 7.2.1, you need to download the WAR file
patch, located in the product
- enhancement section of Bluestone's website
- <a
href="http://www.bluestone.com/SaISAPI.dll/SaServletEngine.class/products/wfe.jsp">here</a>
- </li>
-
- <li>
- After installation of the correct version and/or patch of UBS
7.2, you need to modify your
- apserver.txt file to point to the correct directory for your
war file applications. Look
- for the section that says something similar to the
following:<br />
-
-<pre>
+</ul>
+
+<h4><a name="bluestone">Bluestone Universal Business Server</a></h4>
+
+<ul>
+ <li>You need UBS version 7.2 to run war file applications. The UBS 7.2.2
evaluation
+ is located <a
href="http://www.bluestone.com/SaISAPI.dll/SaServletEngine.class/products/downloads.jsp">here</a>.
+ If you're using version 7.2.1, you need to download the WAR file patch, located
+ in the product enhancement section of Bluestone's website <a
href="http://www.bluestone.com/SaISAPI.dll/SaServletEngine.class/products/wfe.jsp">here</a>
+ </li>
+ <li> After installation of the correct version and/or patch of UBS 7.2, you
+ need to modify your apserver.txt file to point to the correct directory for
+ your war file applications. Look for the section that says something similar
+ to the following:<br />
+ <pre>
[SaServletEngine.class]
session_affinity=1
type=1
@@ -263,226 +273,258 @@
file_path=f:\webapps
host=localhost:20000
</pre>
- </li>
-
- <li>Use the directory specified by the "file_path" variable, or modify
it to point to your own custom
- webapp directory. Copy the "struts-documention.war" and
"struts-example.war" files into that
- webapp directory, and start the UBS (read documentation
distributed with UBS for information on how
- to start it if necessary). Your webapps are now accessible
from the following URL:
-
- <p align="center">
-
http://localhost/<PLUGIN>/SaServletEngine.class/struts-example/<br />
-
http://localhost/<PLUGIN>/SaServletEngine.class/struts-documentation/
- </p>
- </li>
- <li>
- Note: "<PLUGIN>" represents the plugin you are using for
your specific webserver. For
- apache on Windows, it might be "cgi-bin/SaCGI.exe", for IIS on
Windows, it might be
- "scripts/SaCGI.exe" or "scripts/ISAPI.dll". Consult the UBS
documentation for
- more information.
- </li>
- </ul>
-
-
- <h4><a name="orion">Orion Application Server</a></h4>
-
- <p>In the steps below, <code>$ORION_HOME</code> refers to the directory in
which you
- have installed Orion, and <code>$STRUTS_HOME</code> is the directory in
which you
- unpacked the Struts binary distribution.</p>
-
- <ul>
- <li>Modify the file <code>$ORION_HOME/config/application.xml</code> to define
the two
- new applications, by adding the following declarations, immediately
- following the <code>web-module</code> directive for the default web
application:</li>
- </ul>
+ </li>
+
+ <li>Use the directory specified by the "file_path" variable, or modify it to
+ point to your own custom webapp directory. Copy the "struts-documention.war"
+ and "struts-example.war" files into that webapp directory, and start the UBS
+ (read documentation distributed with UBS for information on how to start it
+ if necessary). Your webapps are now accessible from the following URL:
+ <p align="center">
http://localhost/<PLUGIN>/SaServletEngine.class/struts-example/<br />
+ http://localhost/<PLUGIN>/SaServletEngine.class/struts-documentation/
+ </p>
+ </li>
+
+ <li> Note: "<PLUGIN>" represents the plugin you are using for your specific
+ webserver. For apache on Windows, it might be "cgi-bin/SaCGI.exe", for IIS
+ on Windows, it might be "scripts/SaCGI.exe" or "scripts/ISAPI.dll". Consult
+ the UBS documentation for more information. </li>
+</ul>
+
+<h4><a name="orion">Orion Application Server</a></h4>
+
+<p>In the steps below, <code>$ORION_HOME</code> refers to the directory in which
+ you have installed Orion, and <code>$STRUTS_HOME</code> is the directory in
+ which you unpacked the Struts binary distribution.</p>
+
+<ul>
+ <li>Modify the file <code>$ORION_HOME/config/application.xml</code> to define
+ the two new applications, by adding the following declarations, immediately
+ following the <code>web-module</code> directive for the default web
application:</li>
+</ul>
+
<pre><web-module id="strutsDoc"
path="$STRUTS_HOME/webapps/struts-documentation.war"/>
<web-module id="strutsExample"
path="$STRUTS_HOME/webapps/struts-example.war"/>
</pre>
- <ul>
- <li>Modify the file <code>$ORION_HOME/config/default-web-site.xml</code> (or the
- configuration file for any other Orion web site) to include the following
- declarations, after the declaration for the <default-web-app> if
any:</li>
- </ul>
+<ul>
+ <li>Modify the file <code>$ORION_HOME/config/default-web-site.xml</code> (or
+ the configuration file for any other Orion web site) to include the following
+ declarations, after the declaration for the <default-web-app> if any:</li>
+</ul>
+
<pre><web-app application="default" name="strutsDoc"
root="/struts-documentation"/>
<web-app application="default" name="strutsExample"
root="/struts-example"/>
</pre>
-
- <ul>
- <li>After you start Orion, you should now be able to access these applications
- (assuming you haven't changed the port number from the default of 80)
at:</li>
- </ul>
+
+<ul>
+ <li>After you start Orion, you should now be able to access these applications
+ (assuming you haven't changed the port number from the default of 80) at:</li>
+</ul>
+
<pre>http://localhost/struts-documentation
http://localhost/struts-example
</pre>
-
- <ul>
- <li>Versions of Orion up to at least 1.0.3 have a bug related to
- ServletContext.getResource() calls that prevent the Struts example
- application from working out of the box. This manifests itself as a
- JSP error when you try to access the example application, with the
- following message:<br/>
- <code>javax.servlet.jsp.JspException:
- Missing resources attributeorg.apache.struts.action.MESSAGE</code><br/>
- followed by an error traceback. There will also be an initialization
- error message in the <code>ORION_HOME/log/global-application.log</code> log
file.
- To work around this problem, you can take the following steps:</li>
+
+<ul>
+ <li>Versions of Orion up to at least 1.0.3 have a bug related to
ServletContext.getResource()
+ calls that prevent the Struts example application from working out of the
+ box. This manifests itself as a JSP error when you try to access the example
+ application, with the following message:<br/>
+ <code>javax.servlet.jsp.JspException: Missing resources
attributeorg.apache.struts.action.MESSAGE</code><br/>
+ followed by an error traceback. There will also be an initialization error
+ message in the <code>ORION_HOME/log/global-application.log</code> log file.
+ To work around this problem, you can take the following steps:</li>
<ul>
- <li>Go to the <code>$STRUTS_HOME/webapps</code> directory, where you will note
that
- Orion has automatically expanded each web application into an
+ <li>Go to the <code>$STRUTS_HOME/webapps</code> directory, where you will
+ note that Orion has automatically expanded each web application into an
unpacked directory structure.</li>
-
- <li>Go to the <code>$STRUTS_HOME/webapps/struts-example/WEB-INF</code> directory,
- and copy the file <code>struts-config.xml</code> one directory up (that is,
into
- <code>$STRUTS_HOME/webapps/struts-example</code>.</li>
-
- <li>Modify the <code>$STRUTS_HOME/webapps/struts-example/WEB-INF/web.xm</code>
file,
- changing the value of the "config" initialization parameter (for the
+ <li>Go to the <code>$STRUTS_HOME/webapps/struts-example/WEB-INF</code>
directory,
+ and copy the file <code>struts-config.xml</code> one directory up (that
+ is, into <code>$STRUTS_HOME/webapps/struts-example</code>.</li>
+ <li>Modify the <code>$STRUTS_HOME/webapps/struts-example/WEB-INF/web.xm</code>
+ file, changing the value of the "config" initialization parameter (for the
action servlet) from <code>/WEB-INF/struts-config.xml</code> to
<code>/action.xml</code>.</li>
-
- <li>Restart Orion, and you should be able to access the example application.</li>
-
- <li>Note that this workaround has a negative security-related side effect:
- your <code>struts-conifig.xml</code> file can now be retrieved by remote
clients at the
- following URL:<br/>
+ <li>Restart Orion, and you should be able to access the example
application.</li>
+ <li>Note that this workaround has a negative security-related side effect:
+ your <code>struts-conifig.xml</code> file can now be retrieved by remote
+ clients at the following URL:<br/>
<code>http://localhost/struts-example/struts-config.xml</code><br/>
- Therefore, you should be sure you do not store sensitive information
- (such as database passwords) in this file. </li>
- </ul>
+ Therefore, you should be sure you do not store sensitive information (such
+ as database passwords) in this file. </li>
+ </ul>
+</ul>
+
+<h4><a name="silverstream">SilverStream Application Server 3.7.1</a></h4>
+
+<ul>
+ <li>Start the SilverStream application server.</li>
+ <li>Create an XML deployment plan for the
"<code>struts-example.war</code>"
+ application. Call the file
"<code>struts-example-depl-plan.xml</code>".
+ You can use the following contents for the file</li>
+</ul>
+
+<hr/>
+
+<p>----- cut here -----</p>
+
+<pre>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE warJarOptions PUBLIC
+ "-//SilverStream Software, Inc.//DTD J2EE WAR Deployment Plan//EN"
+ "deploy_war.dtd">
+<warJarOptions>
+<warJar>
+<warJarName>struts-example.war</warJarName>
+<isEnabled>true</isEnabled>
+<urls><el>struts-example</el></urls>
+</warJar>
+</warJarOptions>
+</pre>
+
+<p>----- cut here -----</p>
+
+<hr/>
+
+<p>Create an XML deployment plan for the
"<code>struts-documentation.war</code>"
+ application. Call the file "struts-documentation-depl-plan.xml".
+ You can use the following contents for the file:</p>
+
+<hr/>
+<p>----- cut here -----</p>
+
+<pre>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE warJarOptions PUBLIC
+ "-//SilverStream Software, Inc.//DTD J2EE WAR Deployment Plan//EN"
+ "deploy_war.dtd">
+<warJarOptions>
+<warJar>
+<warJarName>struts-example.war</warJarName>
+<isEnabled>true</isEnabled>
+<urls><el>struts-documentation</el></urls>
+</warJar>
+</warJarOptions>
+</pre>
+
+<p>----- cut here -----</p>
+<hr/>
+
+<p>Run the following "<code>SilverCmd DeployWAR</code>" commands to
+ deploy the applications. You can change 'localhost' to whatever server you
+ are deploying to. You can change 'Silvermaster' to whatever
+ database you are deploying to.</p>
+ <ul>
+ <li>SilverCmd DeployWar localhost Silvermaster struts-example.war -f
struts-example-depl-plan.xml</li>
+ <li>SilverCmd DeployWar localhost Silvermaster struts-documentation.war -f
struts-documentation-depl-plan.xml</li>
</ul>
-
- <h4><a name="tomcat_apache">Tomcat 3.1 (Or Later) With Apache</a></h4>
-
- <ul>
- <li>These instructions assume you have successfully integrated
- Tomcat with Apache according to the Tomcat documentation.</li>
-
- <li>Copy "struts-documentation.war" and "struts-example.war"
- to your $TOMCAT_HOME/webapps directory</li>
-
+
+<h4><a name="tomcat_apache">Tomcat 3.1 (Or Later) With Apache</a></h4>
+
+<ul>
+ <li>These instructions assume you have successfully integrated Tomcat with Apache
+ according to the Tomcat documentation.</li>
+ <li>Copy "struts-documentation.war" and "struts-example.war" to your
$TOMCAT_HOME/webapps
+ directory</li>
<li>Restart Tomcat if it is already running</li>
-
- <li>Tomcat will generate a file "$TOMCAT_HOME/conf/tomcat-apache.conf"
- that will be used by Apache. This file is regenerated every time
- you start Tomcat, so copy this file to a safe place (such as
- your Apache configuration directory; on Unix systems this is usually
- <code>/usr/local/apache/conf</code>.</li>
-
- <li>If you are running Tomcat 3.1, Tomcat will not have generated the
- entries for your new applications. Add the following lines to the
- <code>tomcat-apache.conf</code> file that you have saved, replacing
- $TOMCAT_HOME with the path to your Tomcat home directory:</li>
- </ul>
-<pre>Alias /struts-documentation "$TOMCAT_HOME/webapps/struts-documentation
+ <li>Tomcat will generate a file "$TOMCAT_HOME/conf/tomcat-apache.conf" that
+ will be used by Apache. This file is regenerated every time you start Tomcat,
+ so copy this file to a safe place (such as your Apache configuration directory;
+ on Unix systems this is usually <code>/usr/local/apache/conf</code>.</li>
+ <li>If you are running Tomcat 3.1, Tomcat will not have generated the entries
+ for your new applications. Add the following lines to the
<code>tomcat-apache.conf</code>
+ file that you have saved, replacing $TOMCAT_HOME with the path to your Tomcat
+ home directory:</li>
+</ul>
+<pre>
+Alias /struts-documentation "$TOMCAT_HOME/webapps/struts-documentation
<Directory "$TOMCAT_HOME/webapps/struts-documentation>
- Options Indexes FollowSymLinks
+ Options Indexes FollowSymLinks
</Directory>
- ApJServMount /struts-documentation/servlet /struts-documentation
+ ApJServMount /struts-documentation/servlet /struts-documentation
<Location "/struts-documentation/WEB-INF/">
- AllowOverride None
- deny from all
+ AllowOverride None
+ deny from all
</Location>
Alias /struts-example "$TOMCAT_HOME/webapps/struts-example"
<Directory "$TOMCAT_HOME/webapps/struts-example>
- Options Indexes FollowSymLinks
+ Options Indexes FollowSymLinks
</Directory>
- ApJServMount /struts-example/servlet /struts-example
+ ApJServMount /struts-example/servlet /struts-example
<Location "/struts-example/WEB-INF/">
- AllowOverride None
- deny from all
+ AllowOverride None
+ deny from all
</Location>
</pre>
- <ul>
- <li>On all versions of Tomcat, the generated file above does not
- know anything about extension mappings defined in a web.xml file,
- so the "*.do" URIs that go to the controller servlet will not be
- recognized. To fix this, add the following line to the saved
- version of "tomcat-apache.conf", after the corresponding line
- for the .jsp extension:<br/>
- <code>AddHandler jserv-servlet .do</code></li>
-
- <li>Ensure that the saved version of "tomcat-apache.conf" is referenced
- in your Apache "httpd.conf" configuration file. A typical use would
- have the following line at the bottom of "httpd.conf":<br/>
- <code>Include /usr/local/apache/conf/tomcat-apache.conf</code></li>
-
- <li>In order to recognize "index.jsp" as a default page for web
- applications, search in your "httpd.conf" for a "DirectoryIndex"
- directive. If you have one, add "index.jsp" to the end of the
- list, so that it might look like this:<br/>
- <code>DirectoryIndex index.html index.jsp</code><br/>
- If you do not have such an entry, add one like this:<br/>
- <code>DirectoryIndex index.jsp</code></li>
-
- <li>Restart Apache to make it aware of the new applications. You should
- now be able to access the applications from a browser like this:<br/>
- <code>http://localhost/struts-documentation<br/>
- http://localhost/struts-example</code></li>
- </ul>
-
- <h4><a name="wls6">Weblogic 5.1 (service pack 8)</a></h4>
-
- <ul>
- <li>Obtain and install the Xerces XML parser (problems have been reported
- with the Sun reference implementation). Put xerces.jar in your WebLogic system
- path.</li>
-
- <li>Obtain and unpack the Struts binary distribution (this procedure assumes
- it was extracted to <code>c:\jakarta-struts</code>).</li>
-
- <li>Add an entry to weblogic.properties for each of the Struts web
- applications that you would like to configure. For example, to make the
- struts-example application available, add the following line to
- weblogic.properties:<br/>
- <code>weblogic.httpd.webApp.strutsexample=<br/>
- c:/jakarta-struts/webapps/struts-example.war</code></li>
-
- <li>You do not need to include struts.jar or any of the application specific
- classes in the WebLogic classpath, since this will be done automatically
- (unless deploying an unpacked web archive- see below).</li>
-
- <li>Start WebLogic server and point your web browser to the struts
- application. For example, to connect to the example application added in
- step 3:<br/>
- <code>http://localhost:7001/strutsexample</code></li>
-
- <li>This example application depends on the Struts specific resource file
- ApplicationResources.properties to be present on the classpath. However,
- WebLogic only extracts *.class files from the archive so this file will not
- be found, resulting in an error the first time it is needed- something
- similar to: javax.servlet.ServletException: runtime failure in custom tag
- 'message'. Steps 6 & 7 will need to be performed for this application, and
- any other that relies on ApplicationResources.properties.</li>
-
- <li>Extract ApplicationResources.properties from the *.war file, and
- manually copy it to the respective package in the _tmp_war_ directory
- WebLogic created for this application. Again referring to the struts-example
- application, this would be:<br/>
- <code>c:\jakarta-struts\webapps\WEB-INF\_tmp_war_strutsexample</code></li>
-
- <li>Restart WebLogic. You will now be able to run the application:<br/>
- <code>http://localhost:7001/strutsexample</code></li>
- </ul>
-
- <p>The above steps should be followed for applications deployed as *.war
- files. For unpacked web applications, configuration involves adding both
- <code>struts.jar</code> and <code>/WEB-INF/classes</code> to the WebLogic
classpath. For this reason,
- I would suggest deploying applications as war files to WebLogic. However,
- the same example application can be successfully deployed in extracted
- format by modifying weblogic.properties (assuming the war was extracted to
- directory webapps/struts-example):</p>
- <p><code>weblogic.httpd.webApp.strutsexample=<br/>
- c:/jakarta-struts/webapps/struts-example/</code></p>
- <p>And starting WebLogic with the updated WebLogic classpath. For example:</p>
- <p><code>c:\jdk1.3\bin\java -ms16m -mx64m<br/>
- -classpath c:\weblogic\lib\weblogic510sp8boot.jar;</code></p>
-
- </section>
-
- </body>
-
+<ul>
+ <li>On all versions of Tomcat, the generated file above does not know anything
+ about extension mappings defined in a web.xml file, so the "*.do" URIs that
+ go to the controller servlet will not be recognized. To fix this, add the
+ following line to the saved version of "tomcat-apache.conf", after the
corresponding
+ line for the .jsp extension:<br/>
+ <code>AddHandler jserv-servlet .do</code></li>
+ <li>Ensure that the saved version of "tomcat-apache.conf" is referenced in your
+ Apache "httpd.conf" configuration file. A typical use would have the following
+ line at the bottom of "httpd.conf":<br/>
+ <code>Include /usr/local/apache/conf/tomcat-apache.conf</code></li>
+ <li>In order to recognize "index.jsp" as a default page for web applications,
+ search in your "httpd.conf" for a "DirectoryIndex" directive. If you have
+ one, add "index.jsp" to the end of the list, so that it might look like
this:<br/>
+ <code>DirectoryIndex index.html index.jsp</code><br/>
+ If you do not have such an entry, add one like this:<br/>
+ <code>DirectoryIndex index.jsp</code></li>
+ <li>Restart Apache to make it aware of the new applications. You should now
+ be able to access the applications from a browser like this:<br/>
+ <code>http://localhost/struts-documentation<br/>
+ http://localhost/struts-example</code></li>
+</ul>
+<h4><a name="wls6">Weblogic 5.1 (service pack 8)</a></h4>
+<ul>
+ <li>Obtain and install the Xerces XML parser (problems have been reported with
+ the Sun reference implementation). Put xerces.jar in your WebLogic system
+ path.</li>
+ <li>Obtain and unpack the Struts binary distribution (this procedure assumes
+ it was extracted to <code>c:\jakarta-struts</code>).</li>
+ <li>Add an entry to weblogic.properties for each of the Struts web applications
+ that you would like to configure. For example, to make the struts-example
+ application available, add the following line to weblogic.properties:<br/>
+ <code>weblogic.httpd.webApp.strutsexample=<br/>
+ c:/jakarta-struts/webapps/struts-example.war</code></li>
+ <li>You do not need to include struts.jar or any of the application specific
+ classes in the WebLogic classpath, since this will be done automatically
(unless
+ deploying an unpacked web archive- see below).</li>
+ <li>Start WebLogic server and point your web browser to the struts application.
+ For example, to connect to the example application added in step 3:<br/>
+ <code>http://localhost:7001/strutsexample</code></li>
+ <li>This example application depends on the Struts specific resource file
ApplicationResources.properties
+ to be present on the classpath. However, WebLogic only extracts *.class files
+ from the archive so this file will not be found, resulting in an error the
+ first time it is needed- something similar to: javax.servlet.ServletException:
+ runtime failure in custom tag 'message'. Steps 6 & 7 will need to be
performed
+ for this application, and any other that relies on
ApplicationResources.properties.</li>
+ <li>Extract ApplicationResources.properties from the *.war file, and manually
+ copy it to the respective package in the _tmp_war_ directory WebLogic created
+ for this application. Again referring to the struts-example application, this
+ would be:<br/>
+ <code>c:\jakarta-struts\webapps\WEB-INF\_tmp_war_strutsexample</code></li>
+ <li>Restart WebLogic. You will now be able to run the application:<br/>
+ <code>http://localhost:7001/strutsexample</code></li>
+</ul>
+<p>The above steps should be followed for applications deployed as *.war files.
+ For unpacked web applications, configuration involves adding both
<code>struts.jar</code>
+ and <code>/WEB-INF/classes</code> to the WebLogic classpath. For this reason,
+ I would suggest deploying applications as war files to WebLogic. However, the
+ same example application can be successfully deployed in extracted format by
+ modifying weblogic.properties (assuming the war was extracted to directory
webapps/struts-example):</p>
+<p><code>weblogic.httpd.webApp.strutsexample=<br/>
+ c:/jakarta-struts/webapps/struts-example/</code></p>
+<p>And starting WebLogic with the updated WebLogic classpath. For example:</p>
+<p><code>c:\jdk1.3\bin\java -ms16m -mx64m<br/>
+ -classpath c:\weblogic\lib\weblogic510sp8boot.jar;</code></p>
+</section>
+</body>
</document>