blob: 5462ed74cc152c7783e401b6d8406898f4227688 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<faqs title="Frequently Asked Questions">
<!--
Maven FAQ PlugIn 1.2 will allow multiple faqs but, for now, we'll just
generate them from xdocs. This file is just an example of a FAQ file for
the FAQ plug-in and is not maintained.
-->
<part id="general">
<title>General</title>
<faq id="why">
<question>Why do we need Struts?</question>
<answer>
Java technologies give developers a serious boost when creating and
maintaining applications to meet the demands of today's public Web
sites and enterprise intranets. Struts combines Java Servlets, Java
ServerPages, custom tags, and message resources into a unified
framework. The end result is a cooperative, synergistic platform,
suitable for development teams, independent developers, and everyone
in between.
</answer>
</faq>
<faq id="how">
<question>How does Struts work?</question>
<answer>
Java Servlets are designed to handle requests made by Web browsers.
Java ServerPages are designed to create dynamic Web pages that can turn
billboard sites into live applications. Struts uses a special Servlet
as a switchboard to route requests from Web browsers to the appropriate
ServerPage. This makes Web applications much easier to design, create,
and maintain.
</answer>
</faq>
<faq id="compatible">
<question>Is Struts compatible with other Java technologies?</question>
<answer>
Yes. Struts is committed to supporting industry standards. Our lead
developer is a member of <a id="http://java.sun.com/aboutJava/communityprocess/jsr/jsr_052_jsptaglib.html">JSR052</a>,
Sun's Expert group for developing a standard library of custom JSP
tags. A primary design criteria is that Struts must be compatible with
Sun's J2EE platform for corporate enterprises. In fact, Struts really
acts as an integrator of Java technologies, so that they can be used in
the &quot;real world&quot;.
</answer>
</faq>
<faq id="who">
<question>Who wrote Struts?</question>
<answer>
<p>Struts was created by Craig R. McClanahan, and donated to the Apache
Software Foundation in May 2000. Craig is the primary developer of both
Struts and <a id="http://jakarta.apache.org/tomcat/index.html">Tomcat 4</a>,
the basis for the official reference implementation for a servlet 2.3
and JSP 1.2 container. With stable releases of Struts and Tomcat 4 in
circulation, Craig is now the Specification Lead for
<a id="http://jcp.org/jsr/detail/127.jsp">JavaServer Faces (JSR-127)</a>,
and is the Web Layer Architect for the Java2 Enterprise Edition (J2EE)
platform as a whole.</p>
<p>There are now many active committers to the Struts project, working
cooperatively from around the globe. Other Java developers are invited
to <a id="helping.html#contribute">contribute to the project</a>.
Struts is an <a id="http://jakarta.apache.org/">Apache Jakarta</a>
project, with the common mission to &quot;provide commercial-quality
server solutions based on the Java Platform that are developed in an
open and cooperative fashion&quot;. All told, 17 individual developers
and committers contributed to the Struts 1.0 codebase.</p>
</answer>
</faq>
<faq id="struts">
<question>Why is it called Struts?</question>
<answer>
It's a reference to struts in the architectural sense, a reminder of
the nearly invisible pieces that hold up buildings, houses, and bridges.
</answer>
</faq>
<faq id="license">
<question>How is Struts licensed?</question>
<answer>
Struts is copyrighted software available under a
&quot;free-to-use-license&quot; by The Apache Software Foundation.
The license appears at the head of every source code file. A reference
copy of the license is available
<a href="http://www.apache.org/LICENSE-1.1">here</a>.
</answer>
</faq>
<faq id="usage">
<question>Can Struts be used in a commercial product?</question>
<answer>
<p>Yes. The only requirements you must meet are those listed in the
Apache Software Foundation license, which is included at the top of
each source file and in the file LICENSE in the top-level directory
of the distribution.</p>
<p>In addition, <a id="helping.html#bugs">contributions of patches,
improved code, new features,</a> or even just requests for features
are also welcome.</p>
</answer>
</faq>
<faq id="credits">
<question>Do I have to credit Struts on my own website?</question>
<answer>
You need to credit Struts if you <strong>redistribute your own framework</strong>
based on Struts for other people to use. (See the
<a id="http://www.apache.org/LICENSE">Apache License</a> for details.)
But you do <strong>not</strong> need to credit Struts just because your
web application utilizes the framework. It's the same situation as using
the Apache HTTPD server or Tomcat. Not required if its just running
your web site. Required if you've used the source code to create your
own server that you are redistributing to other people.
</answer>
</faq>
<faq id="where">
<question>Where can I get a copy of Struts?</question>
<answer>
The best place to download Struts is at
<a id="http://jakarta.apache.org/struts/">jakarta.apache.org/struts</a>.
The nightly builds are very stable, and recommended as the best place
to start today.
</answer>
</faq>
<faq id="install">
<question>How do I install Struts?</question>
<answer>
<p>To develop applications with Struts, you can usually just add the
Struts JAR file to your Java development environment. You can then
start using the Struts classes as part of your own application.
A blank Struts application (in the <code>webapps</code> directory,
open <code>struts-blank.war</code>) is provided, which you can just
copy to get a quick-start on your own brainchild.</p>
<p>Since the full source code for Struts is available, we also provide
<a id="../userGuide/installation.html">complete instructions</a> for
compiling your own Struts JAR from scratch. (This is actually easier
than it looks!)</p>
<p>Your Struts application can usually be deployed using a standard WAR
file. In most cases, you simply deposit the WAR file on your application
server, and it is installed automatically. If not, step-by-step
installation instructions for
<a id="../userGuide/installation.html#Containers">various servlet
containers</a> are available.</p>
</answer>
</faq>
</part>
<!--
<faq id="">
<question></question>
<answer>
</answer>
</faq>
-->
</faqs>