Save This Page
Home » struts-2.1.8.1-src » org.apache » struts2 » components » [javadoc | source]
org.apache.struts2.components
public class: Param [javadoc | source]
java.lang.Object
   org.apache.struts2.components.Component
      org.apache.struts2.components.Param

This tag can be used to parameterize other tags.

The include tag and bean tag are examples of such tags.

The parameters can be added with or without a name as key. If the tag provides a name attribute the parameters are added using the addParamter method. For unnamed parameters the Tag must implement the UnnamedParametric interface defined in this class (e.g. The TextTag does this).

This tag has the following two paramters.

Note: When you declare the param tag, the value can be defined in either a value attribute or as text between the start and end tag. Struts behaves a bit different according to these two situations. This is best illustrated using an example:
<param name="color">blue</param> <-- (A) -->
<param name="color" value="blue"/> <-- (B) -->
In the first situation (A) the value would be evaluated to the stack as a java.lang.String object. And in situation (B) the value would be evaluated to the stack as a java.lang.Object object.
For more information see WW-808.

Examples

<ui:component>
 <ui:param name="key"     value="[0]"/>
 <ui:param name="value"   value="[1]"/>
 <ui:param name="context" value="[2]"/>
</ui:component>

where the key will be the identifier and the value the result of an OGNL expression run against the current ValueStack.

This second example demonstrates how the text tag can use parameters from this param tag.

<s:text name="cart.total.cost">
    <s:param value="#session.cartTotal"/>
</s:text>

Nested Class Summary:
public interface  Param.UnnamedParametric  Tags can implement this to support nested param tags without the name attribute.

The {@link Text TextTag} uses this approach. For unnamed parameters an example is given in the class javadoc for {@link Param ParamTag}. 

Field Summary
protected  String name     
protected  String value     
Fields inherited from org.apache.struts2.components.Component:
COMPONENT_STACK,  stack,  parameters,  actionMapper,  throwExceptionOnELFailure
Constructor:
 public Param(ValueStack stack) 
Method from org.apache.struts2.components.Param Summary:
end,   setName,   setValue,   usesBody
Methods from org.apache.struts2.components.Component:
addAllParameters,   addParameter,   altSyntax,   altSyntax,   completeExpressionIfAltSyntax,   copyParams,   determineActionURL,   determineNamespace,   end,   end,   fieldError,   findAncestor,   findString,   findString,   findStringIfAltSyntax,   findValue,   findValue,   findValue,   getComponentStack,   getParameters,   getStack,   popComponentStack,   setActionMapper,   setThrowExceptionsOnELFailure,   start,   stripExpressionIfAltSyntax,   stripExpressionIfAltSyntax,   toString,   usesBody
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.struts2.components.Param Detail:
 public boolean end(Writer writer,
    String body) 
 public  void setName(String name) 
 public  void setValue(String value) 
 public boolean usesBody()