|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.struts2.components.Component
public class Component
Base class to extend for UI components.
This class is a good extension point when building reuseable UI components.
| Field Summary | |
|---|---|
protected ActionMapper |
actionMapper
|
static java.lang.String |
COMPONENT_STACK
|
protected java.util.Map |
parameters
|
protected ValueStack |
stack
|
protected boolean |
throwExceptionOnELFailure
|
| Constructor Summary | |
|---|---|
Component(ValueStack stack)
Constructor. |
|
| Method Summary | |
|---|---|
void |
addAllParameters(java.util.Map params)
Adds all the given parameters to this component's own parameters. |
void |
addParameter(java.lang.String key,
java.lang.Object value)
Adds the given key and value to this component's own parameter. |
boolean |
altSyntax()
Is the altSyntax enabled? [TRUE] See struts.properties where the altSyntax flag is defined. |
static boolean |
altSyntax(ValueStack stack)
Is the altSyntax enabled? [TRUE] |
protected java.lang.String |
completeExpressionIfAltSyntax(java.lang.String expr)
Adds the sorrounding %{ } to the expression for proper processing. |
void |
copyParams(java.util.Map params)
Pushes this component's parameter Map as well as the component itself on to the stack and then copies the supplied parameters over. |
protected java.lang.String |
determineActionURL(java.lang.String action,
java.lang.String namespace,
java.lang.String method,
javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res,
java.util.Map parameters,
java.lang.String scheme,
boolean includeContext,
boolean encodeResult,
boolean forceAddSchemeHostAndPort,
boolean escapeAmp)
Renders an action URL by consulting the ActionMapper. |
protected java.lang.String |
determineNamespace(java.lang.String namespace,
ValueStack stack,
javax.servlet.http.HttpServletRequest req)
Determines the namespace of the current page being renderdd. |
boolean |
end(java.io.Writer writer,
java.lang.String body)
Callback for the end tag of this component. |
protected boolean |
end(java.io.Writer writer,
java.lang.String body,
boolean popComponentStack)
Callback for the start tag of this component. |
protected StrutsException |
fieldError(java.lang.String field,
java.lang.String errorMsg,
java.lang.Exception e)
Constructs a RuntimeException based on the given information. |
protected Component |
findAncestor(java.lang.Class clazz)
Finds the nearest ancestor of this component stack. |
protected java.lang.String |
findString(java.lang.String expr)
Evaluates the OGNL stack to find a String value. |
protected java.lang.String |
findString(java.lang.String expr,
java.lang.String field,
java.lang.String errorMsg)
Evaluates the OGNL stack to find a String value. |
protected java.lang.String |
findStringIfAltSyntax(java.lang.String expr)
This check is needed for backwards compatibility with 2.1.x |
protected java.lang.Object |
findValue(java.lang.String expr)
Finds a value from the OGNL stack based on the given expression. |
protected java.lang.Object |
findValue(java.lang.String expr,
java.lang.Class toType)
Evaluates the OGNL stack to find an Object of the given type. |
protected java.lang.Object |
findValue(java.lang.String expr,
java.lang.String field,
java.lang.String errorMsg)
Evaluates the OGNL stack to find an Object value. |
java.util.Stack |
getComponentStack()
Gets the component stack of this component. |
java.util.Map |
getParameters()
Gets the parameters. |
ValueStack |
getStack()
Gets the OGNL value stack assoicated with this component. |
protected void |
popComponentStack()
Pops the component stack. |
void |
setActionMapper(ActionMapper mapper)
|
void |
setThrowExceptionsOnELFailure(java.lang.String throwException)
|
boolean |
start(java.io.Writer writer)
Callback for the start tag of this component. |
protected java.lang.String |
stripExpressionIfAltSyntax(java.lang.String expr)
If altsyntax (%{...}) is applied, simply strip the "%{" and "}" off. |
static java.lang.String |
stripExpressionIfAltSyntax(ValueStack stack,
java.lang.String expr)
If altsyntax (%{...}) is applied, simply strip the "%{" and "}" off. |
protected java.lang.String |
toString(java.lang.Throwable t)
Constructs a string representation of the given exception. |
boolean |
usesBody()
Overwrite to set if body shold be used. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String COMPONENT_STACK
protected ValueStack stack
protected java.util.Map parameters
protected ActionMapper actionMapper
protected boolean throwExceptionOnELFailure
| Constructor Detail |
|---|
public Component(ValueStack stack)
stack - OGNL value stack.| Method Detail |
|---|
public void setActionMapper(ActionMapper mapper)
public void setThrowExceptionsOnELFailure(java.lang.String throwException)
public ValueStack getStack()
public java.util.Stack getComponentStack()
public boolean start(java.io.Writer writer)
writer - the output writer.
public boolean end(java.io.Writer writer,
java.lang.String body)
writer - the output writer.body - the rendered body.
protected boolean end(java.io.Writer writer,
java.lang.String body,
boolean popComponentStack)
writer - the output writer.body - the rendered body.popComponentStack - should the component stack be popped?
protected void popComponentStack()
protected Component findAncestor(java.lang.Class clazz)
clazz - the class to look for, or if assignable from.
protected java.lang.String findString(java.lang.String expr)
expr - OGNL expression.
protected java.lang.String findString(java.lang.String expr,
java.lang.String field,
java.lang.String errorMsg)
RuntimeException is thrown
constructed with a messaged based on the given field and errorMsg paramter.
expr - OGNL expression.field - field name used when throwing RuntimeException.errorMsg - error message used when throwing RuntimeException.
StrutsException - is thrown in case of expression is null.
protected StrutsException fieldError(java.lang.String field,
java.lang.String errorMsg,
java.lang.Exception e)
RuntimeException based on the given information.
A message is constructed and logged at ERROR level before being returned
as a RuntimeException.
field - field name used when throwing RuntimeException.errorMsg - error message used when throwing RuntimeException.e - the caused exception, can be null.
StrutsException.protected java.lang.Object findValue(java.lang.String expr)
expr against stack except when expr
is null. If altsyntax (%{...}) is applied, simply strip it off.
expr - the expression. Returns null if expr is null.
protected java.lang.String stripExpressionIfAltSyntax(java.lang.String expr)
expr - the expression (must be not null)
public static java.lang.String stripExpressionIfAltSyntax(ValueStack stack,
java.lang.String expr)
stack - the ValueStack where the context value is searched for.expr - the expression (must be not null)
public static boolean altSyntax(ValueStack stack)
stack - the ValueStack where the context value is searched for.
struts.properties where the altSyntax flag is defined.public boolean altSyntax()
struts.properties where the altSyntax flag is defined.
protected java.lang.String completeExpressionIfAltSyntax(java.lang.String expr)
expr - the expression.
protected java.lang.String findStringIfAltSyntax(java.lang.String expr)
expr - the expression.
protected java.lang.Object findValue(java.lang.String expr,
java.lang.String field,
java.lang.String errorMsg)
findValue(String) except that if the
given expression is null a error is logged and
a RuntimeException is thrown constructed with a
messaged based on the given field and errorMsg paramter.
expr - OGNL expression.field - field name used when throwing RuntimeException.errorMsg - error message used when throwing RuntimeException.
StrutsException - is thrown in case of not found in the OGNL stack, or expression is null.
protected java.lang.Object findValue(java.lang.String expr,
java.lang.Class toType)
expr the portion wrapped with altSyntax (%{...})
against stack when altSyntax is on, else the whole expr
is evaluated against the stack.
This method only supports the altSyntax. So this should be set to true.
expr - OGNL expression.toType - the type expected to find.
protected java.lang.String determineActionURL(java.lang.String action,
java.lang.String namespace,
java.lang.String method,
javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res,
java.util.Map parameters,
java.lang.String scheme,
boolean includeContext,
boolean encodeResult,
boolean forceAddSchemeHostAndPort,
boolean escapeAmp)
ActionMapper.
action - the actionnamespace - the namespacemethod - the methodreq - HTTP requestres - HTTP responseparameters - parametersscheme - http or httpsincludeContext - should the context path be included or notencodeResult - should the url be encodedforceAddSchemeHostAndPort - should the scheme host and port be forcedescapeAmp - should ampersand (&) be escaped to &
protected java.lang.String determineNamespace(java.lang.String namespace,
ValueStack stack,
javax.servlet.http.HttpServletRequest req)
namespace - the namespacestack - OGNL value stackreq - HTTP request
public void copyParams(java.util.Map params)
params - the parameters to copy.protected java.lang.String toString(java.lang.Throwable t)
t - the exception
public java.util.Map getParameters()
public void addAllParameters(java.util.Map params)
params - the parameters to add.
public void addParameter(java.lang.String key,
java.lang.Object value)
key - the key of the new parameter to add.value - the value assoicated with the key.public boolean usesBody()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||