Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.struts2.components
Class Set

    java.lang.Object
      org.apache.struts2.components.Component
          org.apache.struts2.components.ContextBean
              org.apache.struts2.components.Set

    public class Set

extends ContextBean

The set tag assigns a value to a variable in a specified scope. It is useful when you wish to assign a variable to a complex expression and then simply reference that variable each time rather than the complex expression. This is useful in both cases: when the complex expression takes time (performance improvement) or is hard to read (code readability improvement).

If the tag is used with body content, the evaluation of the value parameter is omitted. Instead, the String to which the body evaluates is set as value for the scoped variable.

The scopes available are as follows :-

- application - the value will be set in application scope according to servlet spec. using the name as its key
- session - the value will be set in session scope according to servlet spec. using the name as key
- request - the value will be set in request scope according to servlet spec. using the name as key
- page - the value will be set in page scope according to servlet sepc. using the name as key
- action - the value will be set in the request scope and Struts' action context using the name as key

NOTE:

If no scope is specified, it will default to action scope.

Parameters

- name* (String): The name of the new variable that is assigned the value of value
- value (Object): The value that is assigned to the variable named name
- scope (String): The scope in which to assign the variable. Can be application, session, request, page, or action. By default it is action.

Examples

     <s:set var="personName" value="person.name"/>
     Hello, <s:property value="#personName"/>

     <s:set var="janesName">Jane Doe</s:set>
     <s:property value="#janesName"/>

Field Summary
`protected String` | `scope`
`protected String` | `value`

Fields inherited from class org.apache.struts2.components.ContextBean
`var`

Fields inherited from class org.apache.struts2.components.Component
`actionMapper, COMPONENT_STACK, devMode, parameters, stack, standardAttributesMap, throwExceptionOnELFailure`

Constructor Summary
`Set(ValueStack stack)`

Method Summary
`boolean` | `end(Writer writer, String body)` Callback for the end tag of this component.
`void` | `setName(String name)`
`void` | `setScope(String scope)`
`void` | `setValue(String value)`
`void` | `setVar(String var)`
`boolean` | `usesBody()` Overwrite to set if body should be used.

Methods inherited from class org.apache.struts2.components.ContextBean
`getVar, putInContext, setId`

Methods inherited from class org.apache.struts2.components.Component
`addAllParameters, addParameter, altSyntax, completeExpressionIfAltSyntax, copyParams, determineActionURL, determineNamespace, end, fieldError, findAncestor, findString, findString, findStringIfAltSyntax, findValue, findValue, findValue, getComponentStack, getParameters, getStack, getStandardAttributes, isValidTagAttribute, popComponentStack, setActionMapper, setDevMode, setThrowExceptionsOnELFailure, setUrlHelper, start, stripExpressionIfAltSyntax, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### scope

    protected String scope

### value

    protected String value

Constructor Detail

### Set

    public Set(ValueStack stack)

Method Detail

### end

    public boolean end(Writer writer,
                       String body)

  Description copied from class: `Component`
  Callback for the end tag of this component. Should the body be evaluated again?

  NOTE: will pop component stack.

  Overrides:
    `end` in class `Component`
  Parameters:
    `writer` - the output writer.
    `body` - the rendered body.
  Returns:
    true if the body should be evaluated again

### setVar

    public void setVar(String var)

  Overrides:
    `setVar` in class `ContextBean`

### setName

    public void setName(String name)

### setScope

    public void setScope(String scope)

### setValue

    public void setValue(String value)

### usesBody

    public boolean usesBody()

  Description copied from class: `Component`
  Overwrite to set if body should be used.

  Overrides:
    `usesBody` in class `Component`
  Returns:
    always false for this component.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000–2018 Apache Software Foundation. All rights reserved.