Overview | Package | Class | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.ibm.wps.portlets.struts
Class WpsRequestProcessor

    java.lang.Object
      RequestProcessor
          com.ibm.wps.portlets.struts.WpsRequestProcessor

    public class WpsRequestProcessor

extends RequestProcessor

WpsRequestProcessor contains the processing logic that the Struts controller portlet performs as it receives each request from the container. The WpsRequestProcessor is a customized version of the base Struts RequestProcessor that allows the Struts application to execute in Portal. This class or subclasses must be the Struts request processor used for Struts applications in portal. The WpsRequestProcessor class can be extended to support customizing the Struts processing in Portal, but the super method implementations should be invoked.

Since:
  4.1

Field Summary
`protected static Log` | `log` The commons-logging instance for this class.
`protected static MessageResources` | `messages` The message resources for the Struts Portlet Framework.

Constructor Summary
`WpsRequestProcessor()` WpsRequestProcessor constructor.

Method Summary
`protected void` | `doForward(java.lang.String uri, HttpServletRequest request, HttpServletResponse response)` Calls doInclude.
`protected void` | `doInclude(java.lang.String uri, HttpServletRequest request, HttpServletResponse response)` Includes a specified URI.
`java.lang.String` | `getApplicationPrefix()` Gets the application prefix associated with this command processor.
`protected ModuleContext` | `getModuleContext()` Returns the module context object.
`protected ServletContext` | `getServletContext()` Returns the servlet context object.
`WpsStrutsInfo` | `getStrutsInfo()` Gets the `WpsStrutsInfo` object associated with this command processor.
`void` | `init(ActionServlet servlet, ModuleConfig moduleConfig)` Initializes this request processor instance.
`protected ActionForward` | `processActionPerform(HttpServletRequest request, HttpServletResponse response, Action action, ActionForm form, ActionMapping mapping)` Asks the specified `Action` instance to handle this request.
`protected ActionForward` | `processException(HttpServletRequest request, HttpServletResponse response, java.lang.Exception exception, ActionForm form, ActionMapping mapping)` Calls the super implementation.
`protected void` | `processForwardConfig(HttpServletRequest request, HttpServletResponse response, ForwardConfig forward)` Processes the ForwardConfig and then calls doFoward.
`protected ActionMapping` | `processMapping(HttpServletRequest request, HttpServletResponse response, java.lang.String path)` Calls the super processMapping implementation.
`protected HttpServletRequest` | `processMultipart(HttpServletRequest request)` If this is a multipart request, wrap it with a special wrapper.
`static void` | `processNewActionUri(java.lang.String uri, HttpServletRequest request, HttpServletResponse response, ServletContext servletContext)` Simulates a forward to a Struts action.
`protected void` | `processNoCache(HttpServletRequest request, HttpServletResponse response)` This method is overridden so that the Struts request processor `processNoCache` method is not called.
`protected void` | `processPopulate(HttpServletRequest request, HttpServletResponse response, ActionForm form, ActionMapping mapping)` Calls the inherited processPopulate.
`protected boolean` | `processRoles(HttpServletRequest request, HttpServletResponse response, ActionMapping mapping)` Calls the super implementation for processing J2EE roles.
`protected java.lang.String` | `processUri(HttpServletRequest request, HttpServletResponse response)` Identifies and returns the path component from the request URI.
`void` | `setServletContext(ServletContext sContext)` Sets the servlet context.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### messages

    protected static MessageResources messages

  The message resources for the Struts Portlet Framework.

### log

    protected static Log log

  The commons-logging instance for this class.

Constructor Detail

### WpsRequestProcessor

    public WpsRequestProcessor()

  WpsRequestProcessor constructor.

Method Detail

### processMultipart

    protected HttpServletRequest processMultipart(HttpServletRequest request)

  If this is a multipart request, wrap it with a special wrapper. Otherwise, return the request unchanged.

  Parameters:
    `request` - The HttpServletRequest we are processing
  Returns:
    HttpServletRequest the wrappered request object if a multipart request

### init

    public void init(ActionServlet servlet,
                     ModuleConfig moduleConfig)
              throws ServletException

  Initializes this request processor instance.

  Parameters:
    `servlet` - The ActionServlet we are associated with
    `moduleConfig` - The ModuleConfig we are associated with.
  Throws:
    `ServletException` - If an error occurs during initialization

### getModuleContext

    protected ModuleContext getModuleContext()

  Returns the module context object.

  Returns:
    returns the ModuleContext object

### processActionPerform

    protected ActionForward processActionPerform(HttpServletRequest request,
                                                 HttpServletResponse response,
                                                 Action action,
                                                 ActionForm form,
                                                 ActionMapping mapping)
                                          throws java.io.IOException,
                                                 ServletException

  Asks the specified `Action` instance to handle this request. Return the `ActionForward` instance (if any) returned by the called `Action` for further processing. This implementation will also check for the Portal friendly StrutsAction class and call the execute method with the portlet objects instead of the http servlet interfaces.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
    `action` - The Action instance to be used
    `form` - The ActionForm instance to pass to this Action
    `mapping` - The ActionMapping instance to pass to this Action
  Throws:
    `java.io.IOException` - if an input/output error occurs
    `ServletException` - if a servlet exception occurs

### processForwardConfig

    protected void processForwardConfig(HttpServletRequest request,
                                        HttpServletResponse response,
                                        ForwardConfig forward)
                                 throws java.io.IOException,
                                        ServletException

  Processes the ForwardConfig and then calls doFoward. Redirects are not supported, and instead are handled as a forward. The path is modified as necessary depending on the context-relative setting and the path is then passed into doForward.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
    `forward` - The ActionForward controlling where we go next
  Throws:
    `java.io.IOException` - if an input/output error occurs
    `ServletException` - if a servlet exception occurs

### processException

    protected ActionForward processException(HttpServletRequest request,
                                             HttpServletResponse response,
                                             java.lang.Exception exception,
                                             ActionForm form,
                                             ActionMapping mapping)
                                      throws java.io.IOException,
                                             ServletException

  Calls the super implementation. If the exception is not handled and is a WpsStrutsException then response.sendError with the exception information is called.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are processing
    `exception` - The exception being handled
    `form` - The ActionForm we are processing
    `mapping` - The ActionMapping we are using
  Throws:
    `java.io.IOException` - if an input/output error occurs
    `ServletException` - if a servlet exception occurs

### processMapping

    protected ActionMapping processMapping(HttpServletRequest request,
                                           HttpServletResponse response,
                                           java.lang.String path)
                                    throws java.io.IOException

  Calls the super processMapping implementation. It then checks the ActionMapping type to see if the Action implements the IStrutsPrepareRender interface. If so, the request processor processing stops.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
    `path` - The portion of the request URI for selecting a mapping
  Throws:
    `java.io.IOException` - if an input/output error occurs

### processNoCache

    protected void processNoCache(HttpServletRequest request,
                                  HttpServletResponse response)

  This method is overridden so that the Struts request processor `processNoCache` method is not called. This method is a no-op in Portal.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating

### doForward

    protected void doForward(java.lang.String uri,
                             HttpServletRequest request,
                             HttpServletResponse response)
                      throws java.io.IOException,
                             ServletException

  Calls doInclude. Forwards are not directly supported in Portal.

  Parameters:
    `uri` - Uri or Definition name to forward
    `request` - Current page request
    `response` - Current page response
  Throws:
    `java.io.IOException`
    `ServletException`

### doInclude

    protected void doInclude(java.lang.String uri,
                             HttpServletRequest request,
                             HttpServletResponse response)
                      throws java.io.IOException,
                             ServletException

  Includes a specified URI. This implementation includes files, or recursively calls the RequestProcessor for Struts actions.

  Parameters:
    `uri` - Uri of page to include
    `request` - Current page request
    `response` - Current page response
  Throws:
    `java.io.IOException`
    `ServletException`

### processNewActionUri

    public static void processNewActionUri(java.lang.String uri,
                                           HttpServletRequest request,
                                           HttpServletResponse response,
                                           ServletContext servletContext)
                                    throws java.io.IOException,
                                           ServletException

  Simulates a forward to a Struts action. The appropriate Request Processor is looked up and the process method is called. The URI is the path for the Struts action and can contain a query string. If the URI is not a path for a Struts action, then the URI will be passed to the `ViewCommandFactory`.

  Parameters:
    `uri` - the new URI
    `request` - the request
    `response` - the response
  Throws:
    `java.io.IOException`
    `ServletException`

### setServletContext

    public void setServletContext(ServletContext sContext)

  Sets the servlet context.

  Parameters:
    `sContext` - the servlet context object

### getServletContext

    protected ServletContext getServletContext()

  Returns the servlet context object.

  Returns:
    returns the servlet context object, can be `null` if not set

### getStrutsInfo

    public WpsStrutsInfo getStrutsInfo()

  Gets the `WpsStrutsInfo` object associated with this command processor.

  Returns:
    returns the WpsStrutsInfo object

### getApplicationPrefix

    public java.lang.String getApplicationPrefix()

  Gets the application prefix associated with this command processor.

  Returns:
    returns the application prefix, can be `null`

### processRoles

    protected boolean processRoles(HttpServletRequest request,
                                   HttpServletResponse response,
                                   ActionMapping mapping)
                            throws java.io.IOException,
                                   ServletException

  Calls the super implementation for processing J2EE roles. If the application was configured to use Portal groups instead then the ActionMapping roles are compared to the user's Portal groups.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
    `mapping` - The mapping we are using
  Throws:
    `java.io.IOException` - if an input/output error occurs
    `ServletException` - if a servlet exception occurs

### processPopulate

    protected void processPopulate(HttpServletRequest request,
                                   HttpServletResponse response,
                                   ActionForm form,
                                   ActionMapping mapping)
                            throws ServletException

  Calls the inherited processPopulate. If file upload is used and the maximum length is exceeded then this method gets the request input stream and reads the byte stream.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
    `form` - The ActionForm instance we are populating
    `mapping` - The ActionMapping we are using
  Throws:
    `ServletException` - if thrown by RequestUtils.populate()

### processUri

    protected java.lang.String processUri(HttpServletRequest request,
                                          HttpServletResponse response)
                                   throws java.io.IOException

  Identifies and returns the path component from the request URI. The path includes the extension mapping. If no such path can be identified, it creates an error response and returns `null`.

  Parameters:
    `request` - The servlet request we are processing
    `response` - The servlet response we are creating
  Throws:
    `java.io.IOException` - if an input/output error occurs

Overview | Package | Class | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD