org.apache.tiles.velocity.template

## Class PutAttributeDirective

- java.lang.Object
- - org.apache.velocity.runtime.directive.Directive
  - - org.apache.tiles.velocity.template.PutAttributeDirective

- All Implemented Interfaces:
    Cloneable, org.apache.velocity.runtime.directive.DirectiveConstants

      public class PutAttributeDirective
      extends org.apache.velocity.runtime.directive.Directive

  Put an attribute in enclosing attribute container tag.

  Enclosing attribute container tag can be :

  - <initContainer>
  - <definition>
  - <insertAttribute>
  - <insertDefinition>
  - <putListAttribute>
  (or any other tag which implements the PutAttributeTagParent interface. Exception is thrown if no appropriate tag can be found.

  Put tag can have following atributes :

  - name : Name of the attribute
  - value : value to put as attribute
  - type : value type. Possible type are : string (value is used as direct string), template (value is used as a page url to insert), definition (value is used as a definition name to insert), object (value is used as it is)
  - role : Role to check when 'insertAttribute' will be called.

  Value can also come from tag body. Tag body is taken into account only if value is not set by one of the tag attributes. In this case Attribute type is "string", unless tag body define another type.

- - ### Field Summary

    - ### Fields inherited from class org.apache.velocity.runtime.directive.Directive

      `log, rsvc`

    - ### Fields inherited from interface org.apache.velocity.runtime.directive.DirectiveConstants

      `BLOCK, LINE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PutAttributeDirective()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getName()`
    `int` | `getType()`
    `boolean` | `render(org.apache.velocity.context.InternalContextAdapter context, Writer writer, org.apache.velocity.runtime.parser.node.Node node)`

    - ### Methods inherited from class org.apache.velocity.runtime.directive.Directive

      `checkArgs, getColumn, getLine, getScopeName, getTemplate, getTemplateName, init, isScopeProvided, makeScope, postRender, preRender, setLocation, setLocation`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PutAttributeDirective

          public PutAttributeDirective()

  - ### Method Detail

    - #### getName

          public String getName()

      Specified by:
        `getName` in class `org.apache.velocity.runtime.directive.Directive`

    - #### getType

          public int getType()

      Specified by:
        `getType` in class `org.apache.velocity.runtime.directive.Directive`

    - #### render

          public boolean render(org.apache.velocity.context.InternalContextAdapter context,
                                Writer writer,
                                org.apache.velocity.runtime.parser.node.Node node)
                         throws IOException

      Specified by:
        `render` in class `org.apache.velocity.runtime.directive.Directive`
      Throws:
        `IOException`

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