| 
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object | +--org.apache.struts.action.RequestProcessor
RequestProcessor contains the processing logic that the Struts controller servlet performs as it receives each servlet request from the container. You can customize the request processing behavior by subclassing this class and overriding the method(s) whose behavior you are interested in changing.
| Field Summary | |
protected  java.util.HashMap | 
actions
The set of Action instances that have been created and initialized, keyed by the fully qualified Java class name of the Action class.  | 
protected  ModuleConfig | 
appConfig
Deprecated. use moduleConfig instead.  | 
static java.lang.String | 
INCLUDE_PATH_INFO
The request attribute under which the path information is stored for processing during a RequestDispatcher.include() call.  | 
static java.lang.String | 
INCLUDE_SERVLET_PATH
The request attribute under which the servlet path information is stored for processing during a RequestDispatcher.include() call.  | 
protected static org.apache.commons.logging.Log | 
log
Commons Logging instance.  | 
protected  ModuleConfig | 
moduleConfig
The ModuleConfiguration we are associated with.  | 
protected  ActionServlet | 
servlet
The controller servlet we are associated with.  | 
| Constructor Summary | |
RequestProcessor()
 | 
|
| Method Summary | |
 void | 
destroy()
Clean up in preparation for a shutdown of this application.  | 
protected  void | 
doForward(java.lang.String uri,
          javax.servlet.http.HttpServletRequest request,
          javax.servlet.http.HttpServletResponse response)
Do a forward to specified uri using request dispatcher.  | 
protected  void | 
doInclude(java.lang.String uri,
          javax.servlet.http.HttpServletRequest request,
          javax.servlet.http.HttpServletResponse response)
Do an include of specified uri using request dispatcher.  | 
 int | 
getDebug()
Deprecated. Configure the logging detail level in your underlying logging implementation  | 
protected  MessageResources | 
getInternal()
Return the MessageResources instance containing our
 internal message strings. | 
protected  javax.servlet.ServletContext | 
getServletContext()
Return the ServletContext for the web application we are running in.  | 
 void | 
init(ActionServlet servlet,
     ModuleConfig moduleConfig)
Initialize this request processor instance.  | 
protected  void | 
internalModuleRelativeForward(java.lang.String uri,
                              javax.servlet.http.HttpServletRequest request,
                              javax.servlet.http.HttpServletResponse response)
Do a module relative forward to specified uri using request dispatcher.  | 
protected  void | 
internalModuleRelativeInclude(java.lang.String uri,
                              javax.servlet.http.HttpServletRequest request,
                              javax.servlet.http.HttpServletResponse response)
Do a module relative include to specified uri using request dispatcher.  | 
protected  void | 
log(java.lang.String message)
Log the specified message to the servlet context log for this web application.  | 
protected  void | 
log(java.lang.String message,
    java.lang.Throwable exception)
Log the specified message and exception to the servlet context log for this web application.  | 
 void | 
process(javax.servlet.http.HttpServletRequest request,
        javax.servlet.http.HttpServletResponse response)
Process an HttpServletRequest and create the
 corresponding HttpServletResponse. | 
protected  Action | 
processActionCreate(javax.servlet.http.HttpServletRequest request,
                    javax.servlet.http.HttpServletResponse response,
                    ActionMapping mapping)
Return an Action instance that will be used to process
 the current request, creating a new one if necessary. | 
protected  ActionForm | 
processActionForm(javax.servlet.http.HttpServletRequest request,
                  javax.servlet.http.HttpServletResponse response,
                  ActionMapping mapping)
Retrieve and return the ActionForm bean associated with
 this mapping, creating and stashing one if necessary. | 
protected  void | 
processActionForward(javax.servlet.http.HttpServletRequest request,
                     javax.servlet.http.HttpServletResponse response,
                     ActionForward forward)
Deprecated. Use processForwardConfig() instead.  | 
protected  ActionForward | 
processActionPerform(javax.servlet.http.HttpServletRequest request,
                     javax.servlet.http.HttpServletResponse response,
                     Action action,
                     ActionForm form,
                     ActionMapping mapping)
Ask the specified Action instance to handle this
 request. | 
protected  void | 
processContent(javax.servlet.http.HttpServletRequest request,
               javax.servlet.http.HttpServletResponse response)
Set the default content type (with optional character encoding) for all responses if requested.  | 
protected  ActionForward | 
processException(javax.servlet.http.HttpServletRequest request,
                 javax.servlet.http.HttpServletResponse response,
                 java.lang.Exception exception,
                 ActionForm form,
                 ActionMapping mapping)
Ask our exception handler to handle the exception.  | 
protected  boolean | 
processForward(javax.servlet.http.HttpServletRequest request,
               javax.servlet.http.HttpServletResponse response,
               ActionMapping mapping)
Process a forward requested by this mapping (if any).  | 
protected  void | 
processForwardConfig(javax.servlet.http.HttpServletRequest request,
                     javax.servlet.http.HttpServletResponse response,
                     ForwardConfig forward)
Forward or redirect to the specified destination, by the specified mechanism.  | 
protected  boolean | 
processInclude(javax.servlet.http.HttpServletRequest request,
               javax.servlet.http.HttpServletResponse response,
               ActionMapping mapping)
Process an include requested by this mapping (if any).  | 
protected  void | 
processLocale(javax.servlet.http.HttpServletRequest request,
              javax.servlet.http.HttpServletResponse response)
Automatically select a Locale for the current user, if requested.  | 
protected  ActionMapping | 
processMapping(javax.servlet.http.HttpServletRequest request,
               javax.servlet.http.HttpServletResponse response,
               java.lang.String path)
Select the mapping used to process the selection path for this request.  | 
protected  javax.servlet.http.HttpServletRequest | 
processMultipart(javax.servlet.http.HttpServletRequest request)
If this is a multipart request, wrap it with a special wrapper.  | 
protected  void | 
processNoCache(javax.servlet.http.HttpServletRequest request,
               javax.servlet.http.HttpServletResponse response)
Set the no-cache headers for all responses, if requested.  | 
protected  java.lang.String | 
processPath(javax.servlet.http.HttpServletRequest request,
            javax.servlet.http.HttpServletResponse response)
Identify and return the path component (from the request URI) that we will use to select an ActionMapping to dispatch with.  | 
protected  void | 
processPopulate(javax.servlet.http.HttpServletRequest request,
                javax.servlet.http.HttpServletResponse response,
                ActionForm form,
                ActionMapping mapping)
Populate the properties of the specified ActionForm instance from the request parameters included with this request.  | 
protected  boolean | 
processPreprocess(javax.servlet.http.HttpServletRequest request,
                  javax.servlet.http.HttpServletResponse response)
General-purpose preprocessing hook that can be overridden as required by subclasses.  | 
protected  boolean | 
processRoles(javax.servlet.http.HttpServletRequest request,
             javax.servlet.http.HttpServletResponse response,
             ActionMapping mapping)
If this action is protected by security roles, make sure that the current user possesses at least one of them.  | 
protected  boolean | 
processValidate(javax.servlet.http.HttpServletRequest request,
                javax.servlet.http.HttpServletResponse response,
                ActionForm form,
                ActionMapping mapping)
If this request was not cancelled, and the request's ActionMapping has not disabled validation, call the
 validate() method of the specified ActionForm,
 and forward back to the input form if there were any errors. | 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
public static final java.lang.String INCLUDE_PATH_INFO
public static final java.lang.String INCLUDE_SERVLET_PATH
protected java.util.HashMap actions
protected ModuleConfig appConfig
protected ModuleConfig moduleConfig
protected static org.apache.commons.logging.Log log
protected ActionServlet servlet
| Constructor Detail | 
public RequestProcessor()
| Method Detail | 
public void destroy()
public void init(ActionServlet servlet,
                 ModuleConfig moduleConfig)
          throws javax.servlet.ServletException
servlet - The ActionServlet we are associated withmoduleConfig - The ModuleConfig we are associated with.
javax.servlet.ServletException - If an error occor during initialization
public void process(javax.servlet.http.HttpServletRequest request,
                    javax.servlet.http.HttpServletResponse response)
             throws java.io.IOException,
                    javax.servlet.ServletException
Process an HttpServletRequest and create the
 corresponding HttpServletResponse.
request - The servlet request we are processingresponse - The servlet response we are creating
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a processing exception occurs
protected Action processActionCreate(javax.servlet.http.HttpServletRequest request,
                                     javax.servlet.http.HttpServletResponse response,
                                     ActionMapping mapping)
                              throws java.io.IOException
Action instance that will be used to process
 the current request, creating a new one if necessary.
request - The servlet request we are processingresponse - The servlet response we are creatingmapping - The mapping we are using
java.io.IOException - if an input/output error occurs
protected ActionForm processActionForm(javax.servlet.http.HttpServletRequest request,
                                       javax.servlet.http.HttpServletResponse response,
                                       ActionMapping mapping)
ActionForm bean associated with
 this mapping, creating and stashing one if necessary.  If there is no
 form bean associated with this mapping, return null.
request - The servlet request we are processingresponse - The servlet response we are creatingmapping - The mapping we are using
protected void processActionForward(javax.servlet.http.HttpServletRequest request,
                                    javax.servlet.http.HttpServletResponse response,
                                    ActionForward forward)
                             throws java.io.IOException,
                                    javax.servlet.ServletException
processForwardConfig(HttpServletRequest, HttpServletResponse,ForwardConfig) when possible.
request - The servlet request we are processingresponse - The servlet response we are creatingforward - The ActionForward controlling where we go next
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected void processForwardConfig(javax.servlet.http.HttpServletRequest request,
                                    javax.servlet.http.HttpServletResponse response,
                                    ForwardConfig forward)
                             throws java.io.IOException,
                                    javax.servlet.ServletException
request - The servlet request we are processingresponse - The servlet response we are creatingforward - The ForwardConfig controlling where we go next
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected ActionForward processActionPerform(javax.servlet.http.HttpServletRequest request,
                                             javax.servlet.http.HttpServletResponse response,
                                             Action action,
                                             ActionForm form,
                                             ActionMapping mapping)
                                      throws java.io.IOException,
                                             javax.servlet.ServletException
Action instance to handle this
 request.  Return the ActionForward instance (if any)
 returned by the called Action for further processing.
request - The servlet request we are processingresponse - The servlet response we are creatingaction - The Action instance to be usedform - The ActionForm instance to pass to this Actionmapping - The ActionMapping instance to pass to this Action
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected void processContent(javax.servlet.http.HttpServletRequest request,
                              javax.servlet.http.HttpServletResponse response)
RequestDispatcher.forward() call is
 ultimately invoked.
request - The servlet request we are processingresponse - The servlet response we are creating
protected ActionForward processException(javax.servlet.http.HttpServletRequest request,
                                         javax.servlet.http.HttpServletResponse response,
                                         java.lang.Exception exception,
                                         ActionForm form,
                                         ActionMapping mapping)
                                  throws java.io.IOException,
                                         javax.servlet.ServletException
ActionForward instance (if any) returned by the
 called ExceptionHandler.
request - The servlet request we are processingresponse - The servlet response we are processingexception - The exception being handledform - The ActionForm we are processingmapping - The ActionMapping we are using
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected boolean processForward(javax.servlet.http.HttpServletRequest request,
                                 javax.servlet.http.HttpServletResponse response,
                                 ActionMapping mapping)
                          throws java.io.IOException,
                                 javax.servlet.ServletException
true if standard processing should continue, or
 false if we have already handled this request.
request - The servlet request we are processingresponse - The servlet response we are creatingmapping - The ActionMapping we are using
java.io.IOException
javax.servlet.ServletException
protected boolean processInclude(javax.servlet.http.HttpServletRequest request,
                                 javax.servlet.http.HttpServletResponse response,
                                 ActionMapping mapping)
                          throws java.io.IOException,
                                 javax.servlet.ServletException
true if standard processing should continue, or
 false if we have already handled this request.
request - The servlet request we are processingresponse - The servlet response we are creatingmapping - The ActionMapping we are using
java.io.IOException
javax.servlet.ServletException
protected void processLocale(javax.servlet.http.HttpServletRequest request,
                             javax.servlet.http.HttpServletResponse response)
HttpSession if necessary.
request - The servlet request we are processingresponse - The servlet response we are creating
protected ActionMapping processMapping(javax.servlet.http.HttpServletRequest request,
                                       javax.servlet.http.HttpServletResponse response,
                                       java.lang.String path)
                                throws java.io.IOException
null.
request - The servlet request we are processingresponse - The servlet response we are creatingpath - The portion of the request URI for selecting a mapping
java.io.IOException - if an input/output error occursprotected javax.servlet.http.HttpServletRequest processMultipart(javax.servlet.http.HttpServletRequest request)
request - The HttpServletRequest we are processing
protected void processNoCache(javax.servlet.http.HttpServletRequest request,
                              javax.servlet.http.HttpServletResponse response)
RequestDispatcher.forward() call is
 ultimately invoked.
request - The servlet request we are processingresponse - The servlet response we are creating
protected java.lang.String processPath(javax.servlet.http.HttpServletRequest request,
                                       javax.servlet.http.HttpServletResponse response)
                                throws java.io.IOException
null.
request - The servlet request we are processingresponse - The servlet response we are creating
java.io.IOException - if an input/output error occurs
protected void processPopulate(javax.servlet.http.HttpServletRequest request,
                               javax.servlet.http.HttpServletResponse response,
                               ActionForm form,
                               ActionMapping mapping)
                        throws javax.servlet.ServletException
Globals.CANCEL_KEY will be set if
 the request was submitted with a button created by
 CancelTag.
request - The servlet request we are processingresponse - The servlet response we are creatingform - The ActionForm instance we are populatingmapping - The ActionMapping we are using
javax.servlet.ServletException - if thrown by RequestUtils.populate()
protected boolean processPreprocess(javax.servlet.http.HttpServletRequest request,
                                    javax.servlet.http.HttpServletResponse response)
true if you want standard processing
 to continue, or false if the response has already been
 completed.  The default implementation does nothing.
request - The servlet request we are processingresponse - The servlet response we are creating
protected boolean processRoles(javax.servlet.http.HttpServletRequest request,
                               javax.servlet.http.HttpServletResponse response,
                               ActionMapping mapping)
                        throws java.io.IOException,
                               javax.servlet.ServletException
true
 to continue normal processing, or false if an appropriate
 response has been created and processing should terminate.
request - The servlet request we are processingresponse - The servlet response we are creatingmapping - The mapping we are using
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected boolean processValidate(javax.servlet.http.HttpServletRequest request,
                                  javax.servlet.http.HttpServletResponse response,
                                  ActionForm form,
                                  ActionMapping mapping)
                           throws java.io.IOException,
                                  javax.servlet.ServletException
If this request was not cancelled, and the request's
 ActionMapping has not disabled validation, call the
 validate() method of the specified ActionForm,
 and forward back to the input form if there were any errors.
 Return true if we should continue processing,
 or false if we have already forwarded control back
 to the input form.
request - The servlet request we are processingresponse - The servlet response we are creatingform - The ActionForm instance we are populatingmapping - The ActionMapping we are using
java.io.IOException - if an input/output error occurs
javax.servlet.ServletException - if a servlet exception occurs
protected void internalModuleRelativeForward(java.lang.String uri,
                                             javax.servlet.http.HttpServletRequest request,
                                             javax.servlet.http.HttpServletResponse response)
                                      throws java.io.IOException,
                                             javax.servlet.ServletException
uri - Module-relative URI to forward torequest - Current page requestresponse - Current page response
java.io.IOException
javax.servlet.ServletException
protected void internalModuleRelativeInclude(java.lang.String uri,
                                             javax.servlet.http.HttpServletRequest request,
                                             javax.servlet.http.HttpServletResponse response)
                                      throws java.io.IOException,
                                             javax.servlet.ServletException
uri - Module-relative URI to includerequest - Current page requestresponse - Current page response
java.io.IOException
javax.servlet.ServletException
protected void doForward(java.lang.String uri,
                         javax.servlet.http.HttpServletRequest request,
                         javax.servlet.http.HttpServletResponse response)
                  throws java.io.IOException,
                         javax.servlet.ServletException
uri - Context-relative URI to forward torequest - Current page requestresponse - Current page response
java.io.IOException
javax.servlet.ServletException
protected void doInclude(java.lang.String uri,
                         javax.servlet.http.HttpServletRequest request,
                         javax.servlet.http.HttpServletResponse response)
                  throws java.io.IOException,
                         javax.servlet.ServletException
uri - Context-relative URI to includerequest - Current page requestresponse - Current page response
java.io.IOException
javax.servlet.ServletExceptionpublic int getDebug()
protected MessageResources getInternal()
MessageResources instance containing our
 internal message strings.
protected javax.servlet.ServletContext getServletContext()
protected void log(java.lang.String message)
message - The message to be logged
protected void log(java.lang.String message,
                   java.lang.Throwable exception)
message - The message to be loggedexception - The exception to be logged
  | 
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||