Package org.apache.struts2.util
Class RegexPatternMatcher
java.lang.Object
org.apache.struts2.util.RegexPatternMatcher
- All Implemented Interfaces:
PatternMatcher<RegexPatternMatcherExpression>
public class RegexPatternMatcher
extends Object
implements PatternMatcher<RegexPatternMatcherExpression>
Allows regular expressions to be used in action names. The regular expressions can be in the form {FIELD_NAME} or {FIELD_NAME:REGULAR_EXPRESSION}. For example:
<action name="/{bio:.+}/test/{name}" class="org.apache.struts2.showcase.UITagExample"> <result>/tags/ui/example.jsp</result> </action>
For this to work it is important to set the following:
<constant name="struts.enable.SlashesInActionNames" value="true"/> <constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/> <constant name="struts.patternMatcher" value="regex" />
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncompilePattern
(String data) Translate the givenString
into an object representing the pattern matchable by this class.boolean
Determines if the pattern is a simple literal string or contains wildcards that will need to be processedboolean
Match a pattern against a string
-
Constructor Details
-
RegexPatternMatcher
public RegexPatternMatcher()
-
-
Method Details
-
compilePattern
Description copied from interface:PatternMatcher
Translate the given
String
into an object representing the pattern matchable by this class.- Specified by:
compilePattern
in interfacePatternMatcher<RegexPatternMatcherExpression>
- Parameters:
data
- The string to translate.- Returns:
- The encoded string
-
isLiteral
Description copied from interface:PatternMatcher
Determines if the pattern is a simple literal string or contains wildcards that will need to be processed- Specified by:
isLiteral
in interfacePatternMatcher<RegexPatternMatcherExpression>
- Parameters:
pattern
- The string pattern- Returns:
- True if the pattern doesn't contain processing elements, false otherwise
-
match
Description copied from interface:PatternMatcher
Match a pattern against a string- Specified by:
match
in interfacePatternMatcher<RegexPatternMatcherExpression>
- Parameters:
map
- The map to store matched valuesdata
- The string to matchexpr
- The compiled wildcard expression- Returns:
- True if a match
-