| <?xml version="1.0" ?> |
| |
| |
| <!-- |
| |
| Copyright 2002,2004 The Apache Software Foundation. |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| |
| |
| <!-- |
| This file contains definitions of the standard Chain Of Responsibility |
| chains that emulate Struts 1.2 processing functionality. These chains |
| are defined in a catalog named "struts" so that the application can |
| use the default catalog for its own purposes, without any potential for |
| name clashes. |
| |
| $Id$ |
| --> |
| |
| |
| <catalog name="struts"> |
| |
| <define name="lookup" |
| className="org.apache.commons.chain.generic.LookupCommand"/> |
| <!-- ========== Servlet Complete Request Chain ========================= --> |
| |
| <chain name="servlet-standard"> |
| |
| <!-- Establish exception handling filter --> |
| <command |
| className="org.apache.struts.chain.commands.ExceptionCatcher" |
| catalogName="struts" |
| exceptionCommand="servlet-exception"/> |
| |
| <lookup |
| catalogName="struts" |
| name="process-action" |
| optional="false"/> |
| |
| <lookup |
| catalogName="struts" |
| name="process-view" |
| optional="false"/> |
| |
| </chain> |
| |
| |
| <!-- ========== Action Processing chain ======================== --> |
| <chain name="process-action"> |
| |
| <!-- |
| This chain attempts to emulate (most of) the standard request |
| processing in the standard org.apache.struts.action.RequestProcessor |
| class, by performing the corresponding tasks in individual Commands |
| that are composable. The following list defines a cross reference |
| between the processXxx methods and the Commands that perform the |
| corresponding functionality: |
| |
| processMultipart Integrated into servlet and legacy classes |
| |
| processPath SelectAction (which also does processMapping) |
| |
| processException ExceptionCatcher / ExceptionHandler |
| |
| processLocale SelectLocale |
| |
| processContent SetContentType |
| |
| processNoCache RequestNoCache |
| |
| processPreprocess LookupCommand with optional="true". Multiple |
| occurrences of this can easily be added, to |
| support additional processing hooks at any |
| point in the chain without modifying the |
| standard definition. |
| |
| processCachedMessages RemoveCachedMessages |
| |
| processMapping SelectAction (which also does processPath) |
| |
| processRoles AuthorizeAction |
| |
| processActionForm CreateActionForm |
| |
| processPopulate PopulateActionForm |
| |
| processValidate ValidateActionForm / SelectInput |
| |
| processForward SelectForward |
| |
| processInclude SelectInclude / PerformInclude |
| |
| processActionCreate CreateAction |
| |
| processActionPerform ExecuteAction |
| --> |
| |
| |
| <!-- Look up optional preprocess command --> |
| <lookup |
| catalogName="struts" |
| name="servlet-standard-preprocess" |
| optional="true"/> |
| |
| |
| <!-- Identify the Locale for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SelectLocale"/> |
| |
| |
| <!-- Set (if needed) the URI of the original request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SetOriginalURI"/> |
| |
| |
| <!-- Set (if needed) no cache HTTP response headers --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.RequestNoCache"/> |
| |
| |
| <!-- Set (if needed) the HTTP response content type --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SetContentType"/> |
| |
| |
| <!-- Remove messages cached in the Session --> |
| <command |
| className="org.apache.struts.chain.commands.RemoveCachedMessages"/> |
| |
| |
| <!-- Identify the ActionConfig for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SelectAction"/> |
| |
| |
| <!-- Authorize the selected ActionConfig for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.AuthorizeAction"/> |
| |
| |
| <!-- Create (if needed) the ActionForm for this request --> |
| <command |
| className="org.apache.struts.chain.commands.CreateActionForm"/> |
| |
| |
| <!-- Populate the ActionForm for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.PopulateActionForm"/> |
| |
| |
| <!-- Validate the ActionForm for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.ValidateActionForm"/> |
| |
| |
| <!-- Select the appropriate ForwardConfig for return to input page --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SelectInput"/> |
| |
| |
| <!-- Lookup and execute a chain command if the current ActionConfig is |
| so-configured. --> |
| <command |
| className="org.apache.struts.chain.commands.ExecuteCommand"/> |
| |
| |
| <!-- Select the appropriate ForwardConfig for action mappings that only |
| have an ActionForward --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.SelectForward"/> |
| |
| |
| <!-- Select the include uri (if any) for the current action mapping --> |
| <command |
| className="org.apache.struts.chain.commands.SelectInclude"/> |
| |
| |
| <!-- Perform the include (if needed) --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.PerformInclude"/> |
| |
| |
| <!-- Create (if needed) the Action for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.CreateAction"/> |
| |
| |
| <!-- Execute the Action for this request --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.ExecuteAction"/> |
| </chain> |
| |
| <!-- ========== View Processing chain ======================== --> |
| <chain name="process-view"> |
| |
| |
| <!-- Lookup and execute a chain command if the current ForwardConfig is |
| so-configured. --> |
| <command |
| className="org.apache.struts.chain.commands.ExecuteForwardCommand"/> |
| |
| <command |
| className="org.apache.struts.tiles.commands.TilesPreProcessor"/> |
| |
| <!-- Follow the returned ForwardConfig (if any) --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.PerformForward"/> |
| |
| |
| </chain> |
| |
| <!-- ========== Servlet Exception Handler Chain ======================== --> |
| |
| <chain name="servlet-exception"> |
| |
| <!-- |
| This chain is designed to be invoked (by o.a.s.c.ExceptionCatcher) |
| if an unhandled exception is thrown by any subsequent command |
| in a processing chain (including the one that invokes a Struts |
| action). The standard definition of this chain supports the |
| exception mapping of Struts 1.1, but can be replaced in order |
| to handle exceptions differently. |
| --> |
| |
| <!-- Execute the configured exception handler (if any) --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.ExceptionHandler"/> |
| |
| <!-- Lookup and execute a chain command if the current ForwardConfig is |
| so-configured. --> |
| <command |
| className="org.apache.struts.chain.commands.ExecuteForwardCommand"/> |
| |
| <command |
| className="org.apache.struts.tiles.commands.TilesPreProcessor"/> |
| |
| <!-- Follow the returned ForwardConfig (if any) --> |
| <command |
| className="org.apache.struts.chain.commands.servlet.PerformForward"/> |
| |
| </chain> |
| |
| |
| </catalog> |