org.apache.cocoon.acting
Class RequestParamAction
java.lang.Object
|
+--org.apache.avalon.framework.logger.AbstractLoggable
|
+--org.apache.cocoon.acting.AbstractAction
|
+--org.apache.cocoon.acting.ComposerAction
|
+--org.apache.cocoon.acting.RequestParamAction
- All Implemented Interfaces:
- Action, org.apache.avalon.framework.component.Component, org.apache.avalon.framework.component.Composable, org.apache.avalon.framework.logger.Loggable, org.apache.avalon.framework.thread.ThreadSafe
- public class RequestParamAction
- extends ComposerAction
- implements org.apache.avalon.framework.thread.ThreadSafe
This action makes some request details available to the sitemap via parameter
substitution.
{context} - is the context path of the servlet (usually "/cocoon")
{requestURI} - is the requested URI without parameters
{requestQuery} - is the query string like "?param1=test" if there is one
Additionlly all request parameters can be made available for use in the sitemap.
if the parameter "parameters" is set to true.
(A variable is created for each request parameter (only if it doesn't exist)
with the same name as the parameter itself)
Default values can be set for request parameters, by including sitemap parameters
named "default.".
Sitemap definition:
<map:action name="request" src="org.apache.cocoon.acting.RequestParamAction"/>
Example use:
<map:match pattern="some-resource">
<map:act type="request">
<map:parameter name="parameters" value="true"/>
<map:parameter name="default.dest" value="invalid-destination.html"/>
<map:redirect-to uri="{context}/somewhereelse/{dest}"/>
</map:act>
</map:match>
Redirection is only one example, another use:
<map:match pattern="some-resource">
<map:act type="request">
<map:parameter name="parameters" value="true"/>
<map:generate src="users/menu-{id}.xml"/>
</map:act>
<map:transform src="menus/personalisation.xsl"/>
<map:serialize/>
</map:match>
etc, etc.
- Version:
- CVS $Id: RequestParamAction.java,v 1.6 2002/02/22 06:59:26 cziegeler Exp $
- Author:
- Marcus Crafter, Torsten Curdt
Fields inherited from interface org.apache.cocoon.acting.Action |
ROLE |
Method Summary |
java.util.Map |
act(Redirector redirector,
SourceResolver resolver,
java.util.Map objectModel,
java.lang.String source,
org.apache.avalon.framework.parameters.Parameters param)
Controls the processing against some values of the
Dictionary objectModel and returns a
Map object with values used in subsequent
sitemap substitution patterns.
|
Methods inherited from class org.apache.avalon.framework.logger.AbstractLoggable |
getLogger, setLogger, setupLogger, setupLogger, setupLogger |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAP_URI
public static final java.lang.String MAP_URI
MAP_QUERY
public static final java.lang.String MAP_QUERY
MAP_CONTEXTPATH
public static final java.lang.String MAP_CONTEXTPATH
PARAM_PARAMETERS
public static final java.lang.String PARAM_PARAMETERS
PARAM_DEFAULT_PREFIX
public static final java.lang.String PARAM_DEFAULT_PREFIX
RequestParamAction
public RequestParamAction()
act
public java.util.Map act(Redirector redirector,
SourceResolver resolver,
java.util.Map objectModel,
java.lang.String source,
org.apache.avalon.framework.parameters.Parameters param)
throws java.lang.Exception
- Description copied from interface:
Action
- Controls the processing against some values of the
Dictionary
objectModel and returns a
Map
object with values used in subsequent
sitemap substitution patterns.
NOTE: This interface is designed so that implentations can be ThreadSafe.
When an action is ThreadSafe, only one instance serves all requests : this
reduces memory usage and avoids pooling.
- Following copied from interface:
org.apache.cocoon.acting.Action
- Parameters:
resolver
- The SourceResolver
in chargeobjectModel
- The Map
with object of the
calling environment which can be used
to select values this controller may need
(ie Request, Response).source
- A source String
to the Actionparameters
- The Parameters
for this invocation- Returns:
- Map The returned
Map
object with
sitemap substitution values which can be used
in subsequent elements attributes like src=
using a xpath like expression: src="mydir/{myval}/foo"
If the return value is null the processing inside
the element of the sitemap will
be skipped.- Throws:
java.lang.Exception
- Indicates something is totally wrong
Copyright © 1999-2002 Apache Software Foundation. All Rights Reserved.