blob: ea2326afc348557751e0fe4dba8868c99e7bd68b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Fri Jun 15 16:53:35 PDT 2001 -->
<TITLE>
Apache Struts API Documentation: Class Action
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../org/apache/struts/action/ActionBase.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Action.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.struts.action</FONT>
<BR>
Class Action</H2>
<PRE>
java.lang.Object
|
+--<B>org.apache.struts.action.Action</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../org/apache/struts/action/ActionBase.html">ActionBase</A>, <A HREF="../../../../org/apache/struts/actions/AddFormBeanAction.html">AddFormBeanAction</A>, <A HREF="../../../../org/apache/struts/actions/AddForwardAction.html">AddForwardAction</A>, <A HREF="../../../../org/apache/struts/actions/AddMappingAction.html">AddMappingAction</A>, <A HREF="../../../../org/apache/struts/actions/DispatchAction.html">DispatchAction</A>, <A HREF="../../../../org/apache/struts/actions/ForwardAction.html">ForwardAction</A>, <A HREF="../../../../org/apache/struts/actions/IncludeAction.html">IncludeAction</A>, <A HREF="../../../../org/apache/struts/actions/ReloadAction.html">ReloadAction</A>, <A HREF="../../../../org/apache/struts/actions/RemoveFormBeanAction.html">RemoveFormBeanAction</A>, <A HREF="../../../../org/apache/struts/actions/RemoveForwardAction.html">RemoveForwardAction</A>, <A HREF="../../../../org/apache/struts/actions/RemoveMappingAction.html">RemoveMappingAction</A></DD>
</DL>
<HR>
<DL>
<DT>public class <B>Action</B><DT>extends java.lang.Object</DL>
<P>
An <strong>Action</strong> is an adapter between the contents of an incoming
HTTP request and the corresponding business logic that should be executed to
process this request. The controller (ActionServlet) will select an
appropriate Action for each request, create an instance (if necessary),
and call the <code>perform</code> method.
<p>
Actions must be programmed in a thread-safe manner, because the controller
will share the same instance for multiple simultaneous requests. In
this means you should design with the following items in mind:
<ul>
<li>Instance and static variables MUST NOT be used to store information
related to the state of a particular request. They MAY be used to
share global resources across requests for the same action.</li>
<li>Access to other resources (JavaBeans, session variables, etc.) MUST
be synchronized if those resources require protection. (Generally,
however, resource classes should be designed to provide their own
protection where necessary.</li>
</ul>
<p>
When an <code>Action</code> instance is first created, the controller
servlet will call <code>setServlet()</code> with a non-null argument to
identify the controller servlet instance to which this Action is attached.
When the controller servlet is to be shut down (or restarted), the
<code>setServlet()</code> method will be called with a <code>null</code>
argument, which can be used to clean up any allocated resources in use
by this Action.
<P>
<DL>
<DT><B>Version: </B><DD>$Revision: 1.1 $ $Date$</DD>
<DT><B>Author: </B><DD>Craig R. McClanahan</DD>
</DL>
<HR>
<P>
<!-- ======== INNER CLASS SUMMARY ======== -->
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Field Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#DATA_SOURCE_KEY">DATA_SOURCE_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which our <strong>default</strong>
configured data source (which must implement
<code>javax.sql.DataSource</code>) is stored,
if one is configured for this application.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected static&nbsp;java.util.Locale</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#defaultLocale">defaultLocale</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The system default Locale.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#ERROR_KEY">ERROR_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The request attributes key under which your action should store an
<code>org.apache.struts.action.ActionErrors</code> object, if you
are using the corresponding custom tag library elements.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#EXCEPTION_KEY">EXCEPTION_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The request attributes key under which Struts custom tags might store a
<code>Throwable</code> that caused them to report a JspException at
runtime.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#FORM_BEANS_KEY">FORM_BEANS_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which our
<code>org.apache.struts.action.ActionFormBeans</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#FORWARDS_KEY">FORWARDS_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which our
<code>org.apache.struts.action.ActionForwards</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#LOCALE_KEY">LOCALE_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The session attributes key under which the user's selected
<code>java.util.Locale</code> is stored, if any.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#MAPPING_KEY">MAPPING_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The request attributes key under which our
<code>org.apache.struts.ActionMapping</code> instance
is passed.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#MAPPINGS_KEY">MAPPINGS_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which our
<code>org.apache.struts.action.ActionMappings</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#MESSAGES_KEY">MESSAGES_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which our application resources are
normally stored, unless overridden when initializing our ActionServlet.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#MULTIPART_KEY">MULTIPART_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The request attributes key under which our multipart class is stored.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#servlet">servlet</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The controller servlet to which we are attached.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#SERVLET_KEY">SERVLET_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The context attributes key under which we store the mapping defined
for our controller serlet, which will be either a path-mapped pattern
(<code>/action/*</code>) or an extension mapped pattern
(<code>*.do</code>).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#TRANSACTION_TOKEN_KEY">TRANSACTION_TOKEN_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The session attributes key under which our transaction token is
stored, if it is used.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#Action()">Action</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#generateToken(javax.servlet.http.HttpServletRequest)">generateToken</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate a new transaction token, to be used for enforcing a single
request for a particular transaction.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.util.Locale</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#getLocale(javax.servlet.http.HttpServletRequest)">getLocale</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the user's currently selected Locale.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/struts/util/MessageResources.html">MessageResources</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#getResources()">getResources</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the message resources for this application.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#getServlet()">getServlet</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the controller servlet instance to which we are attached.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#isCancelled(javax.servlet.http.HttpServletRequest)">isCancelled</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <code>true</code> if the current form's cancel button was
pressed.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#isTokenValid(javax.servlet.http.HttpServletRequest)">isTokenValid</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return <code>true</code> if there is a transaction token stored in
the user's current session, and the value submitted as a request
parameter with this action matches it.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#perform(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)">perform</A></B>(<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process the specified HTTP request, and create the corresponding HTTP
response (or forward to another web component that will create it).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#perform(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.ServletRequest, javax.servlet.ServletResponse)">perform</A></B>(<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process the specified non-HTTP request, and create the corresponding
non-HTTP response (or forward to another web component that will create
it).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#perform(org.apache.struts.action.ActionServlet, org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)">perform</A></B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet,
<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>Use the new perform() method without a servlet argument</I></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#perform(org.apache.struts.action.ActionServlet, org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.ServletRequest, javax.servlet.ServletResponse)">perform</A></B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet,
<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>Use the new perform() method without a servlet argument</I></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#resetToken(javax.servlet.http.HttpServletRequest)">resetToken</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Reset the saved transaction token in the user's session.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#saveErrors(javax.servlet.http.HttpServletRequest, org.apache.struts.action.ActionErrors)">saveErrors</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request,
<A HREF="../../../../org/apache/struts/action/ActionErrors.html">ActionErrors</A>&nbsp;errors)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save the specified error messages keys into the appropriate request
attribute for use by the &lt;struts:errors&gt; tag, if any messages
are required.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#saveToken(javax.servlet.http.HttpServletRequest)">saveToken</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save a new transaction token in the user's current session, creating
a new session if necessary.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#setLocale(javax.servlet.http.HttpServletRequest, java.util.Locale)">setLocale</A></B>(javax.servlet.http.HttpServletRequest&nbsp;request,
java.util.Locale&nbsp;locale)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the user's currently selected Locale.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#setServlet(org.apache.struts.action.ActionServlet)">setServlet</A></B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the controller servlet instance to which we are attached (if
<code>servlet</code> is non-null), or release any allocated resources
(if <code>servlet</code> is null).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/struts/action/Action.html#toHex(byte[])">toHex</A></B>(byte[]&nbsp;buffer)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convert a byte array to a String of hexadecimal digits and return it.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><clinit>, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Field Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="DATA_SOURCE_KEY"><!-- --></A><H3>
DATA_SOURCE_KEY</H3>
<PRE>
public static final java.lang.String <B>DATA_SOURCE_KEY</B></PRE>
<DL>
<DD>The context attributes key under which our <strong>default</strong>
configured data source (which must implement
<code>javax.sql.DataSource</code>) is stored,
if one is configured for this application.</DL>
<HR>
<A NAME="ERROR_KEY"><!-- --></A><H3>
ERROR_KEY</H3>
<PRE>
public static final java.lang.String <B>ERROR_KEY</B></PRE>
<DL>
<DD>The request attributes key under which your action should store an
<code>org.apache.struts.action.ActionErrors</code> object, if you
are using the corresponding custom tag library elements.</DL>
<HR>
<A NAME="EXCEPTION_KEY"><!-- --></A><H3>
EXCEPTION_KEY</H3>
<PRE>
public static final java.lang.String <B>EXCEPTION_KEY</B></PRE>
<DL>
<DD>The request attributes key under which Struts custom tags might store a
<code>Throwable</code> that caused them to report a JspException at
runtime. This value can be used on an error page to provide more
detailed information about what really went wrong.</DL>
<HR>
<A NAME="FORM_BEANS_KEY"><!-- --></A><H3>
FORM_BEANS_KEY</H3>
<PRE>
public static final java.lang.String <B>FORM_BEANS_KEY</B></PRE>
<DL>
<DD>The context attributes key under which our
<code>org.apache.struts.action.ActionFormBeans</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</DL>
<HR>
<A NAME="FORWARDS_KEY"><!-- --></A><H3>
FORWARDS_KEY</H3>
<PRE>
public static final java.lang.String <B>FORWARDS_KEY</B></PRE>
<DL>
<DD>The context attributes key under which our
<code>org.apache.struts.action.ActionForwards</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</DL>
<HR>
<A NAME="LOCALE_KEY"><!-- --></A><H3>
LOCALE_KEY</H3>
<PRE>
public static final java.lang.String <B>LOCALE_KEY</B></PRE>
<DL>
<DD>The session attributes key under which the user's selected
<code>java.util.Locale</code> is stored, if any. If no such
attribute is found, the system default locale
will be used when retrieving internationalized messages. If used, this
attribute is typically set during user login processing.</DL>
<HR>
<A NAME="MAPPING_KEY"><!-- --></A><H3>
MAPPING_KEY</H3>
<PRE>
public static final java.lang.String <B>MAPPING_KEY</B></PRE>
<DL>
<DD>The request attributes key under which our
<code>org.apache.struts.ActionMapping</code> instance
is passed.</DL>
<HR>
<A NAME="MAPPINGS_KEY"><!-- --></A><H3>
MAPPINGS_KEY</H3>
<PRE>
public static final java.lang.String <B>MAPPINGS_KEY</B></PRE>
<DL>
<DD>The context attributes key under which our
<code>org.apache.struts.action.ActionMappings</code> collection
is normally stored, unless overridden when initializing our
ActionServlet.</DL>
<HR>
<A NAME="MESSAGES_KEY"><!-- --></A><H3>
MESSAGES_KEY</H3>
<PRE>
public static final java.lang.String <B>MESSAGES_KEY</B></PRE>
<DL>
<DD>The context attributes key under which our application resources are
normally stored, unless overridden when initializing our ActionServlet.</DL>
<HR>
<A NAME="MULTIPART_KEY"><!-- --></A><H3>
MULTIPART_KEY</H3>
<PRE>
public static final java.lang.String <B>MULTIPART_KEY</B></PRE>
<DL>
<DD>The request attributes key under which our multipart class is stored.</DL>
<HR>
<A NAME="SERVLET_KEY"><!-- --></A><H3>
SERVLET_KEY</H3>
<PRE>
public static final java.lang.String <B>SERVLET_KEY</B></PRE>
<DL>
<DD>The context attributes key under which we store the mapping defined
for our controller serlet, which will be either a path-mapped pattern
(<code>/action/*</code>) or an extension mapped pattern
(<code>*.do</code>).</DL>
<HR>
<A NAME="TRANSACTION_TOKEN_KEY"><!-- --></A><H3>
TRANSACTION_TOKEN_KEY</H3>
<PRE>
public static final java.lang.String <B>TRANSACTION_TOKEN_KEY</B></PRE>
<DL>
<DD>The session attributes key under which our transaction token is
stored, if it is used.</DL>
<HR>
<A NAME="defaultLocale"><!-- --></A><H3>
defaultLocale</H3>
<PRE>
protected static java.util.Locale <B>defaultLocale</B></PRE>
<DL>
<DD>The system default Locale.</DL>
<HR>
<A NAME="servlet"><!-- --></A><H3>
servlet</H3>
<PRE>
protected <A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A> <B>servlet</B></PRE>
<DL>
<DD>The controller servlet to which we are attached.</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="Action()"><!-- --></A><H3>
Action</H3>
<PRE>
public <B>Action</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="getServlet()"><!-- --></A><H3>
getServlet</H3>
<PRE>
public <A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A> <B>getServlet</B>()</PRE>
<DL>
<DD>Return the controller servlet instance to which we are attached.</DL>
<HR>
<A NAME="setServlet(org.apache.struts.action.ActionServlet)"><!-- --></A><H3>
setServlet</H3>
<PRE>
public void <B>setServlet</B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet)</PRE>
<DL>
<DD>Set the controller servlet instance to which we are attached (if
<code>servlet</code> is non-null), or release any allocated resources
(if <code>servlet</code> is null).<DD><DL>
<DT><B>Parameters:</B><DD><CODE>servlet</CODE> - The new controller servlet, if any</DL>
</DD>
</DL>
<HR>
<A NAME="perform(org.apache.struts.action.ActionServlet, org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.ServletRequest, javax.servlet.ServletResponse)"><!-- --></A><H3>
perform</H3>
<PRE>
public <A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A> <B>perform</B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet,
<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response)
throws java.io.IOException,
javax.servlet.ServletException</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I>Use the new perform() method without a servlet argument</I>
<P>
<DD>Process the specified non-HTTP request, and create the corresponding
non-HTTP response (or forward to another web component that will create
it). Return an <code>ActionForward</code> instance describing where
and how control should be forwarded, or <code>null</code> if the
response has already been completed.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>servlet</CODE> - The ActionServlet instance owning this Action<DD><CODE>mapping</CODE> - The ActionMapping used to select this instance<DD><CODE>actionForm</CODE> - The optional ActionForm bean for this request (if any)<DD><CODE>request</CODE> - The servlet request we are processing<DD><CODE>response</CODE> - The servlet response we are processing<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if an input/output error occurs<DD><CODE>javax.servlet.ServletException</CODE> - if a servlet exception occurs</DL>
</DD>
</DL>
<HR>
<A NAME="perform(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.ServletRequest, javax.servlet.ServletResponse)"><!-- --></A><H3>
perform</H3>
<PRE>
public <A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A> <B>perform</B>(<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response)
throws java.io.IOException,
javax.servlet.ServletException</PRE>
<DL>
<DD>Process the specified non-HTTP request, and create the corresponding
non-HTTP response (or forward to another web component that will create
it). Return an <code>ActionForward</code> instance describing where
and how control should be forwarded, or <code>null</code> if the
response has already been completed.
<p>
The default implementation attempts to forward to the HTTP version of
this method.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mapping</CODE> - The ActionMapping used to select this instance<DD><CODE>actionForm</CODE> - The optional ActionForm bean for this request (if any)<DD><CODE>request</CODE> - The non-HTTP request we are processing<DD><CODE>response</CODE> - The non-HTTP response we are creating<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if an input/output error occurs<DD><CODE>javax.servlet.ServletException</CODE> - if a servlet exception occurs</DL>
</DD>
</DL>
<HR>
<A NAME="perform(org.apache.struts.action.ActionServlet, org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><!-- --></A><H3>
perform</H3>
<PRE>
public <A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A> <B>perform</B>(<A HREF="../../../../org/apache/struts/action/ActionServlet.html">ActionServlet</A>&nbsp;servlet,
<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)
throws java.io.IOException,
javax.servlet.ServletException</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I>Use the new perform() method without a servlet argument</I>
<P>
<DD>Process the specified HTTP request, and create the corresponding
HTTP response (or forward to another web component that will create
it). Return an <code>ActionForward</code> instance describing where
and how control should be forwarded, or <code>null</code> if the
response has already been completed.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>servlet</CODE> - The ActionServlet instance owning this Action<DD><CODE>mapping</CODE> - The ActionMapping used to select this instance<DD><CODE>actionForm</CODE> - The optional ActionForm bean for this request (if any)<DD><CODE>request</CODE> - The servlet request we are processing<DD><CODE>response</CODE> - The servlet response we are processing<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if an input/output error occurs<DD><CODE>javax.servlet.ServletException</CODE> - if a servlet exception occurs</DL>
</DD>
</DL>
<HR>
<A NAME="perform(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)"><!-- --></A><H3>
perform</H3>
<PRE>
public <A HREF="../../../../org/apache/struts/action/ActionForward.html">ActionForward</A> <B>perform</B>(<A HREF="../../../../org/apache/struts/action/ActionMapping.html">ActionMapping</A>&nbsp;mapping,
<A HREF="../../../../org/apache/struts/action/ActionForm.html">ActionForm</A>&nbsp;form,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)
throws java.io.IOException,
javax.servlet.ServletException</PRE>
<DL>
<DD>Process the specified HTTP request, and create the corresponding HTTP
response (or forward to another web component that will create it).
Return an <code>ActionForward</code> instance describing where and how
control should be forwarded, or <code>null</code> if the response has
already been completed.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>mapping</CODE> - The ActionMapping used to select this instance<DD><CODE>actionForm</CODE> - The optional ActionForm bean for this request (if any)<DD><CODE>request</CODE> - The HTTP request we are processing<DD><CODE>response</CODE> - The HTTP response we are creating<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if an input/output error occurs<DD><CODE>javax.servlet.ServletException</CODE> - if a servlet exception occurs</DL>
</DD>
</DL>
<HR>
<A NAME="generateToken(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
generateToken</H3>
<PRE>
protected java.lang.String <B>generateToken</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Generate a new transaction token, to be used for enforcing a single
request for a particular transaction.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The request we are processing</DL>
</DD>
</DL>
<HR>
<A NAME="getLocale(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
getLocale</H3>
<PRE>
protected java.util.Locale <B>getLocale</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Return the user's currently selected Locale.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The request we are processing</DL>
</DD>
</DL>
<HR>
<A NAME="getResources()"><!-- --></A><H3>
getResources</H3>
<PRE>
protected <A HREF="../../../../org/apache/struts/util/MessageResources.html">MessageResources</A> <B>getResources</B>()</PRE>
<DL>
<DD>Return the message resources for this application.</DL>
<HR>
<A NAME="isCancelled(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
isCancelled</H3>
<PRE>
protected boolean <B>isCancelled</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Returns <code>true</code> if the current form's cancel button was
pressed. This method will check if the cancel button generated by
<strong>CancelTag</strong> was pressed by the user in the
current request. If true, validation performed by an
<strong>ActionForm</strong> validate() method will have been
skipped by the controller servlet.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The servlet request we are processing<DT><B>See Also: </B><DD><A HREF="../../../../org/apache/struts/taglib/CancelTag.html"><CODE>CancelTag</CODE></A>,
<A HREF="../../../../org/apache/struts/action/ValidatingActionForm.html"><CODE>ValidatingActionForm</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="isTokenValid(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
isTokenValid</H3>
<PRE>
protected boolean <B>isTokenValid</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Return <code>true</code> if there is a transaction token stored in
the user's current session, and the value submitted as a request
parameter with this action matches it. Returns <code>false</code>
under any of the following circumstances:
<ul>
<li>No session associated with this request</li>
<li>No transaction token saved in the session</li>
<li>No transaction token included as a request parameter</li>
<li>The included transaction token value does not match the
transaction token in the user's session</li>
</ul><DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The servlet request we are processing</DL>
</DD>
</DL>
<HR>
<A NAME="resetToken(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
resetToken</H3>
<PRE>
protected void <B>resetToken</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Reset the saved transaction token in the user's session. This
indicates that transactional token checking will not be needed
on the next request that is submitted.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The servlet request we are processing</DL>
</DD>
</DL>
<HR>
<A NAME="saveErrors(javax.servlet.http.HttpServletRequest, org.apache.struts.action.ActionErrors)"><!-- --></A><H3>
saveErrors</H3>
<PRE>
protected void <B>saveErrors</B>(javax.servlet.http.HttpServletRequest&nbsp;request,
<A HREF="../../../../org/apache/struts/action/ActionErrors.html">ActionErrors</A>&nbsp;errors)</PRE>
<DL>
<DD>Save the specified error messages keys into the appropriate request
attribute for use by the &lt;struts:errors&gt; tag, if any messages
are required. Otherwise, ensure that the request attribute is not
created.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The servlet request we are processing<DD><CODE>errors</CODE> - Error messages object</DL>
</DD>
</DL>
<HR>
<A NAME="saveToken(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
saveToken</H3>
<PRE>
protected void <B>saveToken</B>(javax.servlet.http.HttpServletRequest&nbsp;request)</PRE>
<DL>
<DD>Save a new transaction token in the user's current session, creating
a new session if necessary.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The servlet request we are processing</DL>
</DD>
</DL>
<HR>
<A NAME="setLocale(javax.servlet.http.HttpServletRequest, java.util.Locale)"><!-- --></A><H3>
setLocale</H3>
<PRE>
protected void <B>setLocale</B>(javax.servlet.http.HttpServletRequest&nbsp;request,
java.util.Locale&nbsp;locale)</PRE>
<DL>
<DD>Set the user's currently selected Locale.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - The request we are processing<DD><CODE>locale</CODE> - The user's selected Locale to be set, or null
to select the server's default Locale</DL>
</DD>
</DL>
<HR>
<A NAME="toHex(byte[])"><!-- --></A><H3>
toHex</H3>
<PRE>
protected java.lang.String <B>toHex</B>(byte[]&nbsp;buffer)</PRE>
<DL>
<DD>Convert a byte array to a String of hexadecimal digits and return it.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>buffer</CODE> - The byte array to be converted</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../org/apache/struts/action/ActionBase.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Action.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
Copyright © 2000-2001 - Apache Software Foundation
</BODY>
</HTML>