📄 installation.html
字号:
to place the <code>struts.jar</code> file into the shared repository
supported by your container. Be advised that this may cause
ClassNotFoundException problems unless <em>all</em> of
your application classes are stored in the shared repository.</li>
<li>
<strong>lib/*.tld</strong> - These are the "tag library
descriptor" files that describe the custom tags in the various Struts
tag libraries. The tld file for any Struts taglibs that you use should
be copied into the <code>WEB-INF</code> directory of your web
application. (Applications under Servlet 2.3 containers can omit this
step if the <a href="configuration.html#dd_config_taglib_23">standard uri</a>
is referenced.)</li>
<li>
<strong>webapps/struts-blank.war</strong> - This is a simple "web
application archive" file containing a basic starting point for
building your own Struts-based applications.</li>
<li>
<strong>webapps/struts-documentation.war</strong> - This is a
"web application archive" file containing all of the Struts
documentation found on the
<a href="http://struts.apache.org/">Struts web site</a>
(including these pages). You can install this web application
on any servlet container compatible with Servlet API 2.2 or later.</li>
<li>
<strong>webapps/struts-examples.war</strong> - This "modular"
applications combines several usefule demonstrations:
<ul>
<li>Exercise-Taglib - This application module contains test pages for
the various custom tags distributed with Struts. It is primarily of use to
developers who are enhancing the Struts custom tag libraries, but may also
be useful as simple examples of the usage of various Struts tags.</li>
<li>
<strong>Upload</strong> - This application module
is a quick example of uploading files using the Struts framework.
</li>
<li>
<strong>Validator</strong> - This application module
is an example of using the validator framework, using both the
server-side and optional client-side validation.
</li>
</ul>
</li>
<li>
<strong>webapps/struts-mailreader.war</strong> - This is an example
web application that uses a large percentage of Struts features.
You can install this web application on any servlet container
compatible with the Servlet 2.2 (or later) and JSP 1.1 (or later)
specifications. If an XML parser is not made available to web
applications by your container, you will need to add one to the
WEB-INF/lib directory of this web application.</li>
<li>
<strong>webapps/tiles-documentation.war</strong> - This web
application documents how to use tiles, and was developed using tiles.</li>
</ul>
<p>To use Struts in your own application, you will need to follow
these steps:</p>
<ul>
<li>Copy the <code>lib/*.jar</code> files from the Struts
distribution into the <code>WEB-INF/lib</code> directory of your
web application.</li>
<li>Copy the <code>lib/*.tld</code> files for any Struts taglibs you use
from the Struts distribution into the <code>WEB-INF</code> directory
of your web application.</li>
<li>Modify the <code>WEB-INF/web.xml</code> file for your web application
to include a <code><servlet></code> element to define the
controller servlet, and a <code><servlet-mapping></code> element
to establish which request URIs are mapped to this servlet. Use the
<code>WEB-INF/web.xml</code> file from the Struts example application
for a detailed example of the required syntax.</li>
<li>Modify the <code>WEB-INF/web.xml</code> file of your web application
to include the following tag library declarations (Servlet 2.3 can omit
this step if the <a href="configuration.html#dd_config_taglib_23">standard uri</a>
is referenced):</li>
</ul>
<pre><taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.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.
You can use the <code>struts-config.xml</code> file from the Struts
example application for a detailed example of the required syntax.</li>
<li>At the top of each JSP page that will use the Struts custom tags,
add line(s) declaring the Struts custom tag libraries used on
this particular page, like this:</li>
</ul>
<pre><%@ taglib uri="/tags/struts-bean" prefix="bean" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
</pre>
<ul>
<li>When compiling the Java classes that comprise your application, be sure
to include the JAR files (copied earlier) on the
CLASSPATH that is submitted to the compiler.</li>
</ul>
</div>
<h2 id="Containers">Installing Struts With Your Servlet Container</h2>
<div class="indent">
<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>
<h4>Running Struts Applications Under A Security Manager</h4>
<p>Many application servers execute web applications under the control of a
Java security manager, with restricted permissions on what classes in the web
application can do. If you utilize form beans with mapped properties, you may
encounter security exceptions unless you add the following permission to the
set of permissions granted to your Struts application's codebase:</p>
<pre>
permission java.lang.RuntimePermission "accessDeclaredMembers";
</pre>
<p>Consult the documentation on your application server for more information
about how to configure additional security manager permissions.</p>
<h4>Installing Struts on Various Containers</h4>
<ul>
<li>Bluestone Universal Business Server 7.2 - <a href="installation-ubs72.html">Additional
steps required.</a>
</li>
<li>Borland Application Server 4.5 -No additional
steps required.</li>
<li>iPlanet Application Server - Service Pack 2 is recommended. Note that the database
object in the Struts-Example application is not compatible with this container.</li>
<li>iPlanet Web Server - <a href="installation-ip.html">Additional steps required.</a>
</li>
<li>iPortal Application Server - <a href="installation-ipas.html">Additional steps required.</a>
</li>
<li>Jetty - <a href="installation-jetty.html">Additional steps required.</a>
</li>
<li>JRun - <a href="installation-jr30.html">Additional steps required.</a>
</li>
<li>Novell ExteNd Application Server 4.0+ -
<a href="installation-novell.html">Additional steps required.</a>
</li>
<li>Orion Application Server - <a href="installation-oas.html">Additional steps
required.</a>
</li>
<li>Resin 1.2+ "standalone" - No additional steps required.</li>
<li>RexIP - No additional steps required.</li>
<li>SilverStream 3.7.1 and later - <a href="installation-sas.html">Additional steps required.</a>
</li>
<li>Tomcat 3.1 and prior - Not recommended. Use Tomcat 3.2.1 or later.</li>
<li>Tomcat 3.2.1 with Apache - <a href="installation-tc.html">Additional steps
required.</a>
</li>
<li>Tomcat 3.2.1+ "standalone" - No additional steps required.</li>
<li>Tomcat 4.0 - No additional steps required.</li>
<li>Trifork Enterprise Application Server 3.3.x - No additional steps required.</li>
<li>Weblogic 5.1 sp8 - <a href="installation-wls5.html">Additional steps required.</a>
</li>
<li>WebLogic 6.0+ - No additional steps required.</li>
<li>WebSphere - <a href="installation-was352.html">Additional steps required.</a>
</li>
<li>WebSphere - <a href="installation-was352-x.html">Steps for the Example Application.</a>
</li>
</ul>
</div>
<h2 id="Building">Building Struts From Source</h2>
<div class="indent">
<p>First, download a source distribution of Struts by following the
instructions <a href="../acquiring.html">here</a>. Then, make sure
you have downloaded and installed <strong>all</strong> of the
<a href="#Prerequisites">prerequisite</a> software packages described
above.</p>
<p>To build Struts, you will need to customize the build process to the
details of your development environment as follows:</p>
<ul>
<li>The Struts source distribution uses a file named
<code>build.properties</code> (in the top-level directory of the
distribution) to identify the location of external components
that Struts depends on.</li>
<li>There is no <code>build.properties</code> file included with the
source distribution. However, there is an example file named
<code>build.properties.example</code> that you can copy to
<code>build.properties</code> and then customize.</li>
<li>The properties you must configure in <code>build.properties</code> are:
<ul>
<li>
<strong>catalina.home</strong> - Pathname to the directory of your
binary distribution of Tomcat 4.0 (required only if you wish to
use the <code>deploy.catalina</code> target).</li>
<li>
<strong>commons-beanutils.jar</strong> - Pathname of the BeanUtils
package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-collections.jar</strong> - Pathname of the
Collections package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-digester.jar</strong> - Pathname of the
Digester package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-fileupload.jar</strong> - Pathname of the
Fileupload package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-lang.jar</strong> - Pathname of the
Lang package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-logging.jar</strong> - Pathname of the
Logging package JAR file from the Jakarta Commons project.</li>
<li>
<strong>commons-validator.jar</strong> - Pathname of the
Validator package JAR file from the Jakarta Commons project.</li>
<li>
<strong>servletapi.home</strong> - Pathname to the directory of
your binary distribution of the Servlet API classes.</li>
<li>
<strong>tomcat.home</strong> - Pathname to the directory of your
binary distribution of Tomcat 3.2 (required only if you wish to
use the <code>deploy.tomcat</code> target).</li>
<li>
<strong>xerces.home</strong> - Pathname to the directory of your
binary distribution of the Xerces parser, version 1.2 or 1.3
(required only if you wish to use the <code>deploy.catalina</code>
target).</li>
</ul>
</li>
<li>If you are a Struts developer with write access to the CVS repository,
be sure that you do <strong>NOT</strong> check in a copy of the
<code>build.properties</code> file, since it will be different for
each individual developer.</li>
</ul>
<p>To build a "distribution" version of Struts, first change your current
directory to the directory in which you have unpacked the Struts
source distribution, and (if necessary) create or customize the
<code>build.properties</code> file as described above. Then, type:</p>
<pre>
ant dist
</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
files included in a binary distribution of Struts, as described
in the <a href="#Installing">preceding section</a>.</p>
<p>IMPORTANT NOTE: The <code>struts.jar</code>, as well as the JAR files
from the Jakarta Commons project, must be in your classpath when
compiling Struts. The <code>build.xml</code> provided does this
automatically. If you use your development machine to test Struts
application locally, be sure that the <code>struts.jar</code> is
<strong>NOT</strong> on your classpath when your container is running.
</p>
</div>
<hr class="section" />
<div class="indent">
<p class="right">
Next: <a href="../faqs/index.html">FAQs and HowTos</a>
</p>
</div>
</div>
<!--end main-->
</div>
<!--end content-->
<div id="footer">
<img id="powered-logo" alt="Powered by Struts" src="../images/struts-power.gif" />
Copyright (c) 2000-2005, The Apache Software Foundation <span class="noprint">-
<a href="http://wiki.apache.org/struts/StrutsDocComments">Comments?</a>
</span>
</div>
<!--end footer-->
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -