## org.apache.commons.jelly
Interface DynaTag

All Superinterfaces:
  Tag

All Known Implementing Classes:
  DynaBeanTagSupport, DynamicBeanTag, DynamicDynaBeanTag, DynamicTag, DynaTagSupport, MapTagSupport, SetPropertiesTag, StaticTag, UseBeanTag, UseListTag

    public interface DynaTag

extends Tag

`DynaTag` represents a Jelly custom tag which can take its attributes dynamically and store them in some data structure. Typically a DynaTag may use either a Map or a DynaBean to implement itself which avoids writing explicit getter and setter methods for each possible attribute.

This kind of tag can be extremely useful when making HTML-like tags which generally output all the attributes which are used in the markup, except one or two special attributes are used, all others pass through.

Version:
  $Revision: 155420 $
Author:
  James Strachan

Method Summary
`java.lang.Class` `getAttributeType(java.lang.String name)`
`void` `setAttribute(java.lang.String name, java.lang.Object value)` Sets an attribute value of this tag before the tag is invoked

Methods inherited from interface org.apache.commons.jelly.Tag
`doTag, getBody, getContext, getParent, invokeBody, setBody, setContext, setParent`

Method Detail

### setAttribute

    void setAttribute(java.lang.String name,
                      java.lang.Object value)
                      throws JellyTagException

  Sets an attribute value of this tag before the tag is invoked

  Throws:
    `JellyTagException`

### getAttributeType

    java.lang.Class getAttributeType(java.lang.String name)
                                     throws JellyTagException

  Returns:
    the type of the given attribute. By default just return Object.class if this is not known. If this method returns Expression.class then the expression will not be evaluated and just passed in as the attribute value.
  Throws:
    `JellyTagException`

Copyright © 2002-2005 Apache Software Foundation. All Rights Reserved.