|
|||||||||||
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 initializationpublic 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 occursprotected 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 occursprotected 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 usingprotected 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 occursprotected 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 occursprotected 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 occursprotected 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 creatingprotected 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 occursprotected 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 creatingprotected 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 processingprotected 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 creatingprotected 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 occursprotected 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 creatingprotected 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 occursprotected 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 occursprotected 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.ServletException
public 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 loggedprotected 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 |