Package org.apache.struts2.interceptor
Class AliasInterceptor
java.lang.Object
org.apache.struts2.interceptor.AbstractInterceptor
org.apache.struts2.interceptor.AliasInterceptor
- All Implemented Interfaces:
Serializable
,ConditionalInterceptor
,Interceptor
The aim of this Interceptor is to alias a named parameter to a different named parameter. By acting as the glue
between actions sharing similar parameters (but with different names), it can help greatly with action chaining.
Action's alias expressions should be in the form of #{ "name1" : "alias1", "name2" : "alias2" }
.
This means that assuming an action (or something else in the stack) has a value for the expression named name1 and the
action this interceptor is applied to has a setter named alias1, alias1 will be set with the value from
name1.
Interceptor parameters:
- aliasesKey (optional) - the name of the action parameter to look for the alias map (by default this is aliases).
Extending the interceptor:
This interceptor does not have any known extension points.Example code:
<action name="someAction" class="com.examples.SomeAction"> <!-- The value for the foo parameter will be applied as if it were named bar --> <param name="aliases">#{ 'foo' : 'bar' }</param> <interceptor-ref name="alias"/> <interceptor-ref name="basicStack"/> <result name="success">good_result.ftl</result> </action>
- Author:
- Matthew Payne
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String
protected boolean
protected LocalizedTextProvider
protected ValueStackFactory
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintercept
(ActionInvocation invocation) Override to handle interceptionprotected boolean
isAccepted
(String paramName) protected boolean
isExcluded
(String paramName) protected boolean
isNotAcceptableExpression
(String expression) Checks if expression contains vulnerable codevoid
setAcceptedPatterns
(AcceptedPatternsChecker acceptedPatterns) void
setAcceptParamNames
(String commaDelim) Sets a comma-delimited list of regular expressions to match parameters that are allowed in the parameter map (aka whitelist).void
setAliasesKey
(String aliasesKey) Sets the name of the action parameter to look for the alias map.void
setDevMode
(String mode) void
setExcludedPatterns
(ExcludedPatternsChecker excludedPatterns) void
setExcludeParams
(String commaDelim) Sets a comma-delimited list of regular expressions to match parameters that should be removed from the parameter map.void
setLocalizedTextProvider
(LocalizedTextProvider localizedTextProvider) void
setValueStackFactory
(ValueStackFactory valueStackFactory) Methods inherited from class org.apache.struts2.interceptor.AbstractInterceptor
destroy, init, setDisabled, shouldIntercept
-
Field Details
-
aliasesKey
-
valueStackFactory
-
localizedTextProvider
-
devMode
protected boolean devMode
-
-
Constructor Details
-
AliasInterceptor
public AliasInterceptor()
-
-
Method Details
-
setDevMode
-
setValueStackFactory
-
setLocalizedTextProvider
-
setExcludedPatterns
-
setAcceptedPatterns
-
setAliasesKey
Sets the name of the action parameter to look for the alias map.
Default is
aliases
.- Parameters:
aliasesKey
- the name of the action parameter
-
intercept
Description copied from class:AbstractInterceptor
Override to handle interception- Specified by:
intercept
in interfaceInterceptor
- Specified by:
intercept
in classAbstractInterceptor
- Parameters:
invocation
- the action invocation- Returns:
- the return code, either returned from
ActionInvocation.invoke()
, or from the interceptor itself. - Throws:
Exception
- any system-level error, as defined inAction.execute()
.
-
isAccepted
-
isExcluded
-
isNotAcceptableExpression
Checks if expression contains vulnerable code- Parameters:
expression
- of interceptor- Returns:
- true|false
-
setAcceptParamNames
Sets a comma-delimited list of regular expressions to match parameters that are allowed in the parameter map (aka whitelist).Don't change the default unless you know what you are doing in terms of security implications.
- Parameters:
commaDelim
- A comma-delimited list of regular expressions
-
setExcludeParams
Sets a comma-delimited list of regular expressions to match parameters that should be removed from the parameter map.- Parameters:
commaDelim
- A comma-delimited list of regular expressions
-