You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by ws...@apache.org on 2005/09/25 18:37:46 UTC

svn commit: r291440 [3/3] - in /struts/el/trunk/src/tld: ./ struts-bean-el.tld struts-html-el.tld struts-logic-el.tld struts-tiles-el.tld

Propchange: struts/el/trunk/src/tld/struts-html-el.tld
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/el/trunk/src/tld/struts-html-el.tld
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/el/trunk/src/tld/struts-logic-el.tld
URL: http://svn.apache.org/viewcvs/struts/el/trunk/src/tld/struts-logic-el.tld?rev=291440&view=auto
==============================================================================
--- struts/el/trunk/src/tld/struts-logic-el.tld (added)
+++ struts/el/trunk/src/tld/struts-logic-el.tld Sun Sep 25 09:37:38 2005
@@ -0,0 +1,1154 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE taglib PUBLIC 
+    "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
+    "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
+<taglib>
+   <tlib-version>1.3</tlib-version>
+   <jsp-version>1.2</jsp-version>
+   <short-name>logic</short-name>
+   <uri>http://struts.apache.org/tags-logic-el</uri>
+   <description>
+   <![CDATA[
+   This tag library contains tags that are useful in 
+   managing conditional generation of output text, looping over object 
+   collections for repetitive generation of output text, and application flow 
+   management.For tags that do value comparisons (equal, greaterEqual, 
+   greaterThan, lessEqual, lessThan, notEqual), the following rules apply:
+   The specified value is examined.  If it can be converted successfully
+      to a double or a long, it is assumed that the
+      ultimate comparison will be numeric (either floating point or integer).
+      Otherwise, a String comparison will be performed.The variable to be 
+      compared to is retrieved, based on the selector
+      attribute(s) (cookie, header,
+      name, parameter, property)
+      present on this tag.  It will be converted to the appropriate type
+      for the comparison, as determined above.If the specified variable or 
+      property returns null, it will be
+      coerced to a zero-length string before the comparison occurs.The specific
+      comparison for this tag will be performed, and the nested
+      body content of this tag will be evaluated if the comparison returns
+      a true result.For tags that do substring matching (match,
+  notMatch), the following rules apply:The specified variable is retrieved,
+  based on the selector attribute(s)
+      (cookie, header, name,
+      parameter, property) present on this tag.
+      The variable is converted to a String, if necessary.A request time 
+      exception will be thrown if the specified variable
+      cannot be retrieved, or has a null value.The specified value is checked
+      for existence as a substring of the
+      variable, in the position specified by the location
+      attribute, as follows:  at the beginning (if location is set to
+      start), at the end (if location is set to
+      end), or anywhere (if location is not specified).Many of the tags in this
+      tag library will throw a
+  JspException at runtime when they are utilized incorrectly
+  (such as when you specify an invalid combination of tag attributes).  JSP
+  allows you to declare an "error page" in the &lt;%@ page %&gt;
+  directive.  If you wish to process the actual exception that caused the
+  problem, it is passed to the error page as a request attribute under key
+  org.apache.struts.action.EXCEPTION.Struts-logic tags NOT implemented. 
+  This library, a derivation of the normal "struts-logic" library, provides
+the functionality of the Struts logic tags, but assumes the presence of the
+JavaServer Pages Standard Library (JSTL), and uses the JSTL expression engine
+(hereafter abbreviated in many places as just "el") to evaluate attribute
+values instead of using JSP runtime expressions (sometimes called
+"rtexprvalues").Because it is assumed this library will be used with the JSTL 
+and the new
+EL engine, there are some tags in the struts-logic library which provide
+functionality which is entirely subsumed by the JSTL.  This section lists each
+struts-logic tag which is NOT implemented in the struts-logic-el library, and
+describes the JSTL tag which can be used instead of the Struts tag.Struts-Logic
+TagJSTL Tag
+<code>&lt;logic:empty;gt;</code>
+      This functionality is subsumed by the JSTL &lt;c:if>,
+&lt;c:when> tags and the empty function in the
+JSTL EL.
+     Example: &lt;c:if test="${empty var}">CONTENT&lt;/c:if>
+     ]]>
+     </description>
+   <tag>
+      <name>forward</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELForwardTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Forward control to the page specified by the specified ActionForward
+    entry.
+    </strong></p>
+          <p>Performs a <code>PageContext.forward()</code> or
+    <code>HttpServletResponse.sendRedirect()</code> call for the global
+    <code>ActionForward</code> entry for the specified name.  URL
+    rewriting will occur automatically if a redirect is performed.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>
+      	The logical name of the global <code>ActionForward</code> entry
+      	that identifies the destination, and forwarding approach, to be used.
+        <strong>Note</strong>: forwarding to Tiles definitions is not supported
+        from this tag.  You should forward to them from an Action subclass.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>iterate</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELIterateTag</tag-class>
+      <tei-class>org.apache.struts.taglib.logic.IterateTei</tei-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Repeat the nested body content of this tag over a specified collection.
+    </strong></p>
+          <p>Repeats the nested body content of this tag once for every element
+    of the specified collection, which must be an <code>Iterator</code>,
+    a <code>Collection</code>, a <code>Map</code> (whose values are to be
+    iterated over), or an array.  The collection to be iterated over must be
+    specified in one of the following ways:</p>
+         <ul>
+            <li>As a runtime expression specified as the value of the
+        <code>collection</code> attribute.</li>
+            <li>As a JSP bean specified by the <code>name</code> attribute.</li>
+            <li>As the property, specified by the <code>property</code>, of the
+        JSP bean specified by the <code>name</code> attribute.</li>
+         </ul>
+         <p>The collection to be iterated over MUST conform to one of the following
+    requirements in order for iteration to be successful:</p>
+         <ul>
+            <li>An array of Java objects or primitives.</li>
+            <li>An implementation of <code>java.util.Collection</code>, including
+        <code>ArrayList</code> and <code>Vector</code>.</li>
+            <li>An implementation of <code>java.util.Enumeration</code>.</li>
+            <li>An implementation of <code>java.util.Iterator</code>.</li>
+            <li>An implementation of <code>java.util.Map</code>, including
+        <code>HashMap</code>, <code>Hashtable</code>, and
+        <code>TreeMap</code>.  <strong>NOTE</strong> - See below for
+        additional information about accessing Maps.</li>
+         </ul>
+         <p>Normally, each object exposed by the iterate tag is an element
+    of the underlying collection you are iterating over.  However, if you
+    iterate over a <code>Map</code>, the exposed object is of type
+    <code>Map.Entry</code> that has two properties:</p>
+         <ul>
+            <li>
+               <code>key</code> - The key under which this item is stored in the
+        underlying Map.</li>
+            <li>
+               <code>value</code> - The value that corresponds to this key.</li>
+         </ul>
+         <p>So, if you wish to iterate over the values of a Hashtable, you would
+    implement code like the following:</p>
+         <code>&lt;logic-el:iterate id="element" name="myhashtable"><br/>
+      Next element is &lt;bean:write name="element" property="value"/><br/>
+    &lt;/logic-el:iterate>
+    </code>
+         <p>If the collection you are iterating over can contain <code>null</code>
+    values, the loop will still be performed but no page scope attribute
+    (named by the <code>id</code> attribute) will be created for that loop
+    iteration.  You can use the <code>&lt;logic-el:present;gt;</code> and
+    <code>&lt;logic-el:notPresent;gt;</code> tags to test for this case.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>collection</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>A runtime expression that evaluates to a collection (conforming to
+      the requirements listed above) to be iterated over.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>id</name>
+         <required>true</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a page scope JSP bean that will contain the current
+      element of the collection on each iteration, if it is not
+      <code>null</code>.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>indexId</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a page scope JSP bean that will contain the current
+      index of the collection on each iteration.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>length</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The maximum number of entries (from the underlying collection) to be
+      iterated through on this page.  This can be either an integer that
+      directly expresses the desired value, or the name of a JSP bean (in
+      any scope) of type <code>java.lang.Integer</code> that defines the
+      desired value.  If not present, there will be no limit on the number
+      of iterations performed.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of the JSP bean containing the collection to be iterated
+      (if <code>property</code> is not specified), or the JSP bean whose
+      property getter returns the collection to be iterated (if
+      <code>property</code> is specified).</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>offset</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The zero-relative index of the starting point at which entries from
+      the underlying collection will be iterated through.  This can be either
+      an integer that directly expresses the desired value, or the name of a
+      JSP bean (in any scope) of type <code>java.lang.Integer</code> that
+      defines the desired value.  If not present, zero is assumed (meaning
+      that the collection will be iterated from the beginning.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Name of the property, of the JSP bean specified by <code>name</code>,
+      whose getter returns the collection to be iterated.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The bean scope within which to search for the bean named by the
+      <code>name</code> property, or "any scope" if not specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>type</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Fully qualified Java class name of the element to be exposed through
+      the JSP bean named from the <code>id</code> attribute.  If not present,
+      no type conversions will be performed.  NOTE:  The actual elements of
+      the collection must be assignment-compatible with this class, or a
+      request time ClassCastException will occur.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>match</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELMatchTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Evaluate the nested body content of this tag if the specified value
+    is an appropriate substring of the requested variable.
+    </strong></p>
+          <p>Matches the variable specified by one of the selector attributes
+    (as a String) against the specified constant value.  If the value is
+    a substring (appropriately limited by the <code>location</code>
+    attribute), the nested body content of this tag is evaluated.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>cookie</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the value of the cookie whose
+      name is specified by this attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>expr</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>
+       A specific value to be compared with, either a static value, or an EL
+       value.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>header</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the value of the header whose
+      name is specified by this attribute.  The name match is performed
+      in a case insensitive manner.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>location</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>If not specified, a match between the variable and the value may
+      occur at any position within the variable string.  If specified, the
+      match must occur at the specified location (either <code>start</code>
+      or <code>end</code>) of the variable string.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the JSP bean specified by this
+      attribute, if <code>property</code> is not specified, or the value
+      of the specified property of this bean, if <code>property</code>
+      is specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>parameter</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the first, or only, value of the
+      request parameter specified by this attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the property (of the bean specified
+      by the <code>name</code> attribute) specified by this attribute.
+      The property reference can be simple, nested, and/or indexed.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The bean scope within which to search for the bean named by the
+      <code>name</code> property, or "any scope" if not specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>value</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The constant value which is checked for existence as a substring
+      of the specified variable.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>messagesNotPresent</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELMessagesNotPresentTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Generate the nested body content of this tag if the specified
+    message is not present in this request.
+    </strong></p>
+          <p>Evaluates the nested body content of this tag if
+       an <code>ActionMessages</code>
+       object, <code>ActionErrors</code> object, a String,
+       or a String array is not in request scope.  If
+       such a bean is not found, nothing will be rendered.
+    </p>
+            <dl><dt><b>Since:</b></dt>
+            <dd>Struts 1.1</dd></dl>
+          ]]>
+          </description>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The parameter key to retrieve the message from request scope.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Name of the property for which messages should be
+         retrieved.  If not specified, all messages (regardless
+         of property) are retrieved.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>message</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>By default the tag will retrieve the request scope bean it will
+         iterate over from the <code>Action.ERROR_KEY</code> constant string,
+         but if this attribute is set to 'true' the request scope bean
+         will be retrieved from the <code>Action.MESSAGE_KEY</code>
+         constant string.  Also if this is set to 'true', any value
+         assigned to the name attribute will be ignored.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>messagesPresent</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELMessagesPresentTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Generate the nested body content of this tag if the specified
+    message is present in this request.
+    </strong></p>
+          <p>Evaluates the nested body content of this tag if
+       an <code>ActionMessages</code>
+       object, <code>ActionErrors</code> object, a String,
+       or a String array is in request scope.  If
+       such a bean is not found, nothing will be rendered.
+    </p>
+            <dl><dt><b>Since:</b></dt>
+            <dd>Struts 1.1</dd></dl>
+          ]]>
+          </description>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The parameter key to retrieve the message from request scope.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Name of the property for which messages should be
+         retrieved.  If not specified, all messages (regardless
+         of property) are retrieved.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>message</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>By default the tag will retrieve the request scope bean it will
+         iterate over from the <code>Action.ERROR_KEY</code> constant string,
+         but if this attribute is set to 'true' the request scope bean
+         will be retrieved from the <code>Action.MESSAGE_KEY</code>
+         constant string.  Also if this is set to 'true', any value
+         assigned to the name attribute will be ignored.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>notMatch</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELNotMatchTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Evaluate the nested body content of this tag if the specified value
+    is not an appropriate substring of the requested variable.
+    </strong></p>
+          <p>Matches the variable specified by one of the selector attributes
+    (as a String) against the specified constant value.  If the value is
+    not a substring (appropriately limited by the <code>location</code>
+    attribute), the nested body content of this tag is evaluated.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>cookie</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the value of the cookie whose
+      name is specified by this attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>expr</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>
+       A specific value to be compared with, either a static value, or an EL
+       value.
+      </p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>header</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the value of the header whose
+      name is specified by this attribute.  The name match is performed
+      in a case insensitive manner.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>location</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>If not specified, a match between the variable and the value may
+      occur at any position within the variable string.  If specified, the
+      match must occur at the specified location (either <code>start</code>
+      or <code>end</code>) of the variable string.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the JSP bean specified by this
+      attribute, if <code>property</code> is not specified, or the value
+      of the specified property of this bean, if <code>property</code>
+      is specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>parameter</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the first, or only, value of the
+      request parameter specified by this attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The variable to be matched is the property (of the bean specified
+      by the <code>name</code> attribute) specified by this attribute.
+      The property reference can be simple, nested, and/or indexed.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The bean scope within which to search for the bean named by the
+      <code>name</code> property, or "any scope" if not specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>value</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The constant value which is checked for existence as a substring
+      of the specified variable.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>notPresent</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELNotPresentTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Generate the nested body content of this tag if the specified
+    value is not present in this request.
+    </strong></p>
+          <p>Depending on which attribute is specified, this tag checks the
+    current request, and evaluates the nested body content of this tag
+    only if the specified value <strong>is not</strong> present.  Only one
+    of the attributes may be used in one occurrence of this tag, unless
+    you use the <code>property</code> attribute, in which case the
+    <code>name</code> attribute is also required.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>cookie</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a cookie with the specified name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>header</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of an HTTP header with the specified
+      name.  The name match is performed in a case insensitive manner.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a JSP bean, in any scope, with the
+      specified name.  If <code>property</code> is also specified, checks
+      for a non-null property value for the specified property.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>parameter</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of at least one occurrence of the
+      specified request parameter on this request, even if the parameter
+      value is a zero-length string.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a non-null property value, returned
+      by a property getter method on the JSP bean (in any scope) that is
+      specified by the <code>name</code> attribute.  Property references
+      can be simple, nested, and/or indexed.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks whether the currently authenticated user (if any) has been
+      associated with the specified security role.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The bean scope within which to search for the bean named by the
+      <code>name</code> property, or "any scope" if not specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>user</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks whether the currently authenticated user principal has the
+      specified name.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>present</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELPresentTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+            <p><strong>
+    Generate the nested body content of this tag if the specified
+    value is present in this request.
+    </strong></p>
+          <p>Depending on which attribute is specified, this tag checks the
+    current request, and evaluates the nested body content of this tag
+    only if the specified value <strong>is</strong> present.  Only one
+    of the attributes may be used in one occurrence of this tag, unless
+    you use the <code>property</code> attribute, in which case the
+    <code>name</code> attribute is also required.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>cookie</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a cookie with the specified name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>header</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of an HTTP header with the specified
+      name.  The name match is performed in a case insensitive manner.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a JSP bean, in any scope, with the
+      specified name.  If <code>property</code> is also specified, checks
+      for a non-null property value for the specified property.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>parameter</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of at least one occurrence of the
+      specified request parameter on this request, even if the parameter
+      value is a zero-length string.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks for the existence of a non-null property value, returned
+      by a property getter method on the JSP bean (in any scope) that is
+      specified by the <code>name</code> attribute.  Property references
+      can be simple, nested, and/or indexed.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks whether the currently authenticated user (if any) has been
+      associated with any of the specified security roles. Use a comma-delimited
+      list to check for multiple roles. Example:
+      <code>&lt;logic-el:present role="role1,role2,role3">
+                code.....
+            &lt;/logic-el:present;gt;</code>
+            </p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The bean scope within which to search for the bean named by the
+      <code>name</code> property, or "any scope" if not specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>user</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Checks whether the currently authenticated user principal has the
+      specified name.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>redirect</name>
+      <tag-class>org.apache.strutsel.taglib.logic.ELRedirectTag</tag-class>
+      <description>
+      <![CDATA[
+            <p><strong>Render an HTTP Redirect</strong></p>
+          <p>Performs an <code>HttpServletResponse.sendRedirect()</code>
+                call to the hyperlink specified by the attributes to this
+                tag.  URL rewriting will be applied automatically, to
+                maintain session state in the absence of cookies.</p>
+         <p>The base URL for this redirect is calculated based on
+                which of the following attributes you specify (you must
+                specify exactly one of them):</p>
+         <ul>
+            <li>
+               <em>forward</em> - Use the value of this attribute as the
+                    name of a global <code>ActionForward</code> to be looked
+                    up, and use the module-relative or context-relative
+                    URI found there.</li>
+            <li>
+               <em>href</em> - Use the value of this attribute unchanged.
+                    </li>
+            <li>
+               <em>page</em> - Use the value of this attribute as an
+                    module-relative URI, and generate a server-relative
+                    URI by including the context path.</li>
+         </ul>
+         <p>Normally, the redirect you specify with one of the
+                attributes described in the previous paragraph will be left
+                unchanged (other than URL rewriting if necessary).  However,
+                there are two ways you can append one or more dynamically
+                defined query parameters to the hyperlink -- specify a single
+                parameter with the <code>paramId</code> attribute (and its
+                associated attributes to select the value), or specify the
+                <code>name</code> (and optional <code>property</code>)
+                attributes to select a <code>java.util.Map</code> bean that
+                contains one or more parameter ids and corresponding values.
+                </p>
+         <p>To specify a single parameter, use the <code>paramId</code>
+                attribute to define the name of the request parameter to be
+                submitted.  To specify the corresponding value, use one of the
+                following approaches:</p>
+         <ul>
+            <li>
+               <em>Specify only the <code>paramName</code> attribute</em>
+                    - The named JSP bean (optionally scoped by the value of the
+                    <code>paramScope</code> attribute) must identify a value
+                    that can be converted to a String.</li>
+            <li>
+               <em>Specify both the <code>paramName</code> and
+                    <code>paramProperty</code> attributes</em> - The specified
+                    property getter method will be called on the JSP bean
+                    identified by the <code>paramName</code> (and optional
+                    <code>paramScope</code>) attributes, in order to select
+                    a value that can be converted to a String.</li>
+         </ul>
+         <p>If you prefer to specify a <code>java.util.Map</code> that
+                contains all of the request parameters to be added to the
+                hyperlink, use one of the following techniques:</p>
+         <ul>
+            <li>
+               <em>Specify only the <code>name</code> attribute</em> -
+                    The named JSP bean (optionally scoped by the value of
+                    the <code>scope</code> attribute) must identify a
+                    <code>java.util.Map</code> containing the parameters.</li>
+            <li>
+               <em>Specify both <code>name</code> and
+                    <code>property</code> attributes</em> - The specified
+                    property getter method will be called on the bean
+                    identified by the <code>name</code> (and optional
+                    <code>scope</code>) attributes, in order to return the
+                    <code>java.util.Map</code> containing the parameters.</li>
+         </ul>
+         <p>As the <code>Map</code> is processed, the keys are assumed
+                to be the names of query parameters to be appended to the
+                hyperlink.  The value associated with each key must be either
+                a String or a String array representing the parameter value(s).
+                If a String array is specified, more than one value for the
+                same query parameter name will be created.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>action</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Logical name of a global <code>Action</code> that
+                          contains the actual content-relative URI of the destination
+                          of this transfer.  This hyperlink may be dynamically
+                          modified by the inclusion of query parameters, as described
+                          in the tag description.  You <strong>must</strong> specify
+                          exactly one of the <code>action</code> attribute, the
+                          <code>forward</code> attribute, the
+                          <code>href</code> attribute,
+                          or the <code>page</code> attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>anchor</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Optional anchor tag ("#xxx") to be added to the generated
+                  hyperlink.  Specify this value <strong>without</strong> any
+                  "#" character.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>forward</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Logical name of a global <code>ActionForward</code> that
+                  contains the actual content-relative URI of the destination
+                  of this redirect.  This URI may be dynamically
+                  modified by the inclusion of query parameters, as described
+                  in the tag description.  You <strong>must</strong> specify
+                  exactly one of the <code>forward</code> attribute, the
+                  <code>href</code> attribute, the <code>linkName</code>
+                  attribute, or the <code>page</code> attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>href</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The URL to which this redirect will transfer control.
+                  This URL may be dynamically modified
+                  by the inclusion of query parameters, as described in the
+                  tag description.  You <strong>must</strong> specify
+                  exactly one of the <code>forward</code> attribute, the
+                  <code>href</code> attribute, the <code>linkName</code>
+                  attribute, or the <code>page</code> attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a JSP bean that contains a <code>Map</code>
+                  representing the query parameters (if <code>property</code>
+                  is not specified), or a JSP bean whose property getter is
+                  called to return a <code>Map</code> (if <code>property</code>
+                  is specified).</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>page</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The context-relative path (beginning with a "/"
+                  character) to which this hyperlink will transfer control
+                  if activated.  This hyperlink may be dynamically modified
+                  by the inclusion of query parameters, as described in the
+                  tag description.  You <strong>must</strong> specify exactly
+                  one of the <code>forward</code> attribute, the
+                  <code>href</code> attribute, the <code>linkName</code>
+                  attribute, or the <code>page</code> attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>paramId</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of the request parameter that will be dynamically
+                  added to the generated hyperlink.  The corresponding value is
+                  defined by the <code>paramName</code> and (optional)
+                  <code>paramProperty</code> attributes, optionally scoped by
+                  the <code>paramScope</code> attribute</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>paramName</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a JSP bean that is a String containing the
+                  value for the request parameter named by <code>paramId</code>
+                  (if <code>paramProperty</code> is not specified), or a JSP
+                  bean whose property getter is called to return a String
+                  (if <code>paramProperty</code> is specified).  The JSP bean
+                  is constrained to the bean scope specified by the
+                  <code>paramScope</code> property, if it is specified.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>paramProperty</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a property of the bean specified by the
+                  <code>paramName</code> attribute, whose return value must
+                  be a String containing the value of the request parameter
+                  (named by the <code>paramId</code> attribute) that will be
+                  dynamically added to this hyperlink.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>paramScope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The scope within which to search for the bean specified
+                  by the <code>paramName</code> attribute.  If not specified,
+                  all scopes are searched.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>property</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The name of a property of the bean specified by the
+                  <code>name</code> attribute, whose return value must be
+                  a <code>java.util.Map</code> containing the query parameters
+                  to be added to the hyperlink.  You <strong>must</strong>
+                  specify the <code>name</code> attribute if you specify
+                  this attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>The scope within which to search for the bean specified
+                  by the <code>name</code> attribute.  If not specified, all
+                  scopes are searched.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>transaction</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>Set to <code>true</code> if you want the current
+                    transaction control token included in the generated
+                    URL for this redirect.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>useLocalEncoding</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>If set to <code>true</code>, LocalCharacterEncoding will be
+              used, that is, the characterEncoding set to the HttpServletResponse,
+              as prefered character encoding rather than UTF-8, when
+              URLEncoding is done on parameters of the URL.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+</taglib>
+
+
+

Propchange: struts/el/trunk/src/tld/struts-logic-el.tld
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/el/trunk/src/tld/struts-logic-el.tld
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/el/trunk/src/tld/struts-tiles-el.tld
URL: http://svn.apache.org/viewcvs/struts/el/trunk/src/tld/struts-tiles-el.tld?rev=291440&view=auto
==============================================================================
--- struts/el/trunk/src/tld/struts-tiles-el.tld (added)
+++ struts/el/trunk/src/tld/struts-tiles-el.tld Sun Sep 25 09:37:38 2005
@@ -0,0 +1,893 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE taglib PUBLIC 
+    "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
+    "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
+<taglib>
+   <tlib-version>1.3</tlib-version>
+   <jsp-version>1.2</jsp-version>
+   <short-name>tiles</short-name>
+   <uri>http://struts.apache.org/tags-tiles-el</uri>
+   <description>
+   <![CDATA[
+      <p>This tag library provides tiles tags.  
+   Tiles were previously called Components. For historical reasons, names, 
+   pages, components and templates are used indifferently to design a tile. 
+   Also, a lot of tags and attribute names are left for backward compatibility.
+   To know more about tags defined in this library, check the associated 
+   documentation: tiles-doc.</p>
+   ]]>
+   </description>
+   <tag>
+      <name>insert</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELInsertTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+         <p><strong>Insert a tiles/component/template.</strong></p>
+         <p>Insert a tiles/component/template with the possibility to pass 
+         parameters (called attribute). A tile can be seen as a procedure that 
+         can take parameters or attributes. <code>&lt;tiles:insert;gt;</code> 
+         allows to define these attributes and pass them to the inserted jsp 
+         page, called template.  Attributes are defined using nested tag 
+         <code>&lt;tiles:put;gt;</code> or <code>&lt;tiles:putList;gt;</code>.
+         </p>
+         <p>You must specify one of this tag attribute :</p>
+            <ul>
+            
+               <li><code>template</code>, for inserting a 
+               tiles/component/template page,</li>
+               
+               <li><code>component</code>, for inserting a 
+               tiles/component/template page, (same as template)</li>
+               
+               <li><code>page</code> for inserting a JSP page,
+               (same as template)</li>
+               
+               <li><code>definition</code>, for inserting a definition from 
+               definitions factory</li>
+               
+               <li><code>attribute</code>, surrounding tiles's attribute name 
+               whose value is used.<br/>
+               
+               If attribute is associated to 'direct' flag (see put), 
+               and flag is true, write attribute value (no insertion).</li>
+               
+              <li><code>name</code>, to let 'insert' determine the type of 
+              entities to insert. In this later case, search is done in 
+              this order : definitions, tiles/components/templates, pages.</li>
+              
+           </ul>
+         
+        <p>In fact, Page, component and template, are equivalent as a tile, 
+        component or template are jsp page.</p>
+        
+        <p><strong>Example : </strong></p>
+           <pre>
+              <code>
+                 &lt;tiles:insert page="/basic/myLayout.jsp" flush="true">
+                 &lt;tiles:put name="title" value="My first page" />
+                 &lt;tiles:put name="header" value="/common/header.jsp" />
+                 &lt;tiles:put name="footer" value="/common/footer.jsp" />
+                 &lt;tiles:put name="menu" value="/basic/menu.jsp" />
+                 &lt;tiles:put name="body" value="/basic/helloBody.jsp" />
+                 &lt;/tiles:insert>
+              </code>
+           </pre>
+      ]]>
+      </description>
+      <attribute>
+         <name>template</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>A string representing the URI of a tile or template (a JSP page).</p>
+         <p>'page', 'component' and 'template' are synonyms :
+         they have exactly the same behavior.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>component</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Path (relative or absolute to webapps) of the component to insert.</p>
+         <p>'page', 'component' and 'template' are synonyms : 
+         they have exactly the same behavior.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>page</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Path (relative or absolute to webapps) of the page to insert.</p>
+         <p>'page', 'component' and 'template' are synonyms : 
+         they have exactly the same behavior.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>definition</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the definition to insert. Definition are defined in a 
+         centralized file. For now, only definition from factory can be 
+         inserted with this attribute.
+         To insert a definition defined with tag 
+         <code>&lt;tiles:definition;gt;</code>, use beanName="".</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>attribute</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of an attribute in current tile/component context. 
+         Value of this attribute is passed to
+         'name' (see attribute 'name').</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of an entity to insert. Search is done in this order :
+         definition, attribute, [tile/component/template/page].</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanName</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the bean used as value. Bean is retrieved from specified 
+         context, if any. Otherwise, method pageContext.findAttribute is used.
+         If beanProperty is also specified, retrieve value from the 
+         corresponding bean property.</p>
+         <p>If found bean (or property value) is instance of one of Attribute 
+         class (Direct, Instance, ...), insertion is done according to the 
+         class type. Otherwise, the toString method is called on the bean, and
+         returned String is used as name to insert (see 'name' attribute).</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanProperty</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Bean property name. If specified, value is retrieved from this 
+         property. Supports nested/indexed properties.</p>
+         ]]>
+      </description>
+      </attribute>
+      <attribute>
+         <name>beanScope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Scope into which bean is searched. If not specified, method 
+         pageContext.findAttribute is used.
+         Scope can be any JSP scope, 'component', or 'template'.
+         In these two later cases, bean is search in tile/component/template 
+         context.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>flush</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>True or false. If true, current page out stream is flushed before
+         insertion.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>ignore</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If this attribute is set to true, and the attribute specified by
+         the name does not exist, simply return without writing anything. 
+         The default value is false, which will cause a runtime exception to 
+         be thrown.</p>
+      ]]>
+      </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If the user is in the specified role, the tag is taken into account;
+         otherwise, the tag is ignored (skipped).</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>controllerUrl</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Url of a controller called immediately before page is inserted.</p>
+         <p>Url usually denote a Struts action. Controller (action) is used 
+         to prepare data to be render by inserted Tile.</p>
+         <p>See also controlerClass. Only one of controllerUrl or 
+         controllerClass should be used.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>controllerClass</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Class type of a controller called immediately before page is 
+         inserted.</p>
+         <p>Controller is used to prepare data to be render by inserted 
+         Tile.</p>
+         <p>See also controlerUrl</p>
+         <p>Class must implements or extends one of the following :</p>
+           <ul>
+             <li>org.apache.struts.tiles.Controller</li>
+             <li>org.apache.struts.tiles.ControllerSupport</li>
+             <li>org.apache.struts.action.Action (wrapper 
+             org.apache.struts.action.ActionController is used)</li>
+           </ul>
+         <p>See also controllerUrl. Only one of controllerUrl or 
+         controllerClass should be used.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>definition</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELDefinitionTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Create a tile /component / template definition bean.
+      </strong></p>
+      <p>Create a tile/component/template definition as a bean.
+      Newly created bean will be saved under specified "id", in the requested
+      "scope". Definition tag has same syntax as <code>insert</code></p>
+      ]]>
+      </description>
+      <attribute>
+         <name>id</name>
+         <required>true</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Specifies the name under which the newly created definition bean 
+         will be saved.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Specifies the variable scope into which the newly defined bean 
+         will be created. If not specified, the bean will be created in page 
+         scope.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>template</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>A string representing the URI of a tile/component/template
+         (a JSP page).</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>page</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>URL of the template / component to insert. Same as "template".</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Role to check before inserting this definition. If role is not
+         defined for current user, definition is not inserted. Checking is
+         done at insert time, not during definition process.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>extends</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of a parent definition that is used to initialize this new
+         definition. Parent definition is searched in definitions factory.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>put</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELPutTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Put an attribute into tile/component/template context.
+      </strong></p>
+          
+      <p>Define an attribute to pass to tile/component/template. This tag can
+      only be used inside 'insert' or 'definition' tag. Value (or content) is
+      specified using attribute 'value' (or 'content'), or using the tag body.
+      It is also possible to specify the type of the value :</p>
+      
+      <ul>
+         <li>string : Content is written directly.</li>
+         <li>page | template : Content is included from specified URL. 
+         Name is used as an URL.</li>
+         <li>definition : Content come from specified definition (from factory). 
+         Name is used as definition name.</li>
+      </ul>
+      
+      <p>If 'type' attribute is not specified, content is 'untyped', unless it
+      comes from a typed bean.</p>
+      <p>Note that using 'direct="true"' is equivalent to 'type="string"'.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the attribute.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>value</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Attribute value. Could be a String or an Object.
+         Value can come from a direct assignment (value="aValue") or from a bean.
+         One of 'value' 'content' or 'beanName' must be present.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>content</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Content that's put into tile scope. Synonym to value. Attribute 
+         added for compatibility with JSP Template.</p>
+         ]]>
+      </description>
+      </attribute>
+      <attribute>
+         <name>direct</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Determines how content is handled: true means content is
+         printed <em>direct</em></p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>type</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Specify content type: string, page, template or definition.</p>
+         <ul>
+            <li>String : Content is printed directly.</li>
+            <li>page | template : Content is included from specified URL.
+            Name is used as an URL.</li>
+            <li>definition : Value is the name of a definition defined in 
+            factory (xml file). Definition will be searched
+            in the inserted tile, in a <code>&lt;tiles:insert 
+            attribute="attributeName";gt;</code> tag, where 'attributeName'
+            is the name used for this tag.</li>
+         </ul>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanName</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the bean used as value. Bean is retrieved from specified
+         context, if any. Otherwise, method pageContext.findAttribute is used.
+         If beanProperty is specified, retrieve value from the corresponding
+         bean property.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanProperty</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Bean property name. If specified, value is retrieve from this
+         property. Support nested/indexed properties.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanScope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Scope into which bean is searched. If not specified, method 
+         pageContext.findAttribute is used.
+         Scope can be any JSP scope, 'tile', 'component', or 'template'.
+         In these three later cases, bean is search in tile/component/template 
+         context.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If the user is in the specified role, the tag is taken into account;
+         otherwise, the tag is ignored (skipped).</p>
+         ]]>
+        </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>putList</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELPutListTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Declare a list that will be pass as attribute to tile.
+      </strong></p>
+      <p>Declare a list that will be pass as attribute to tile.
+      List elements are added using the tag 'add'.
+      This tag can only be used inside 'insert' or 'definition' tag.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>true</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the list.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>add</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELAddTag</tag-class>
+      <body-content>JSP</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>
+      Add an element to the surrounding list.
+      Equivalent to 'put', but for list element.
+      </strong></p>
+      <p>Add an element to the surrounding list.
+      This tag can only be used inside putList tag.
+      Value can come from a direct assignment (value="aValue") or from a bean.
+      One of 'value' or 'beanName' must be present.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>value</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Element value. Can be a String or Object.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>content</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Element value. Can be a String or Object.  Synonym to value. 
+         Attribute added for compatibility with JSP Template.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>direct</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Determines how content is handled: true means content is
+         printed <em>direct</em></p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>type</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Specify content type: string, page, template or instance.</p>
+         <ul>
+            <li>String : Content is printed directly.</li>
+            <li>page | template : Content is included from specified URL. 
+            Name is used as an URL.</li>
+            <li>definition : Value denote a definition defined in factory 
+            (xml file). Definition will be searched
+            in the inserted tile, in a <code>&lt;insert 
+            attribute="attributeName";gt;</code> tag, where 'attributeName'
+            is the name used for this tag.</li>
+         </ul>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanName</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Name of the bean used as value. Bean is retrieved from specified 
+         context, if any. Otherwise, method pageContext.findAttribute is used.
+         If beanProperty is specified, retrieve value from the corresponding 
+         bean property.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanProperty</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Bean property name. If specified, value is retrieved from this 
+         property. Supports nested/indexed properties.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>beanScope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Scope into which bean is searched. If not specified, method 
+         pageContext.findAttribute is used.
+         Scope can be any JSP scope, 'component', or 'template'.
+         In these two later cases, bean is search in tile/component/template
+         context.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+            <p>If the user is in the specified role, the tag is taken into 
+            account; otherwise, the tag is ignored (skipped).</p>
+            <p>The role isn't taken into account if <code>&lt;add;gt;</code> 
+            tag is used in a definition.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>get</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELGetTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+         <p><strong>Gets the content from request scope that was put there by a
+         put tag.</strong></p>
+         <p>Retrieve content from tile context and include it.</p>
+         <p>Take into account the 'type' attribute.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>The name of the content to get from tile/component scope.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>ignore</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If this attribute is set to true, and the attribute specified by 
+         the name does not exist, simply return without writing anything. 
+         The default value is false, which will cause a runtime exception to 
+         be thrown.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>flush</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>True or false. If true, current page out stream is flushed 
+         before insertion.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If the user is in the specified role, the tag is taken into account;
+         otherwise, the tag is ignored (skipped).</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>getAsString</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELGetAttributeTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Render the value of the specified tile/component/template
+      attribute to the current JspWriter</strong></p>
+      
+      <p>Retrieve the value of the specified tile/component/template attribute 
+      property, and render it to the current JspWriter as a String.
+      The usual toString() conversions is applied on found value.</p>
+      <p>Throw a JSPException if named value is not found.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Attribute name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>ignore</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If this attribute is set to true, and the attribute specified by 
+         the name does not exist, simply return without writing anything.
+         The default value is false, which will cause a runtime exception 
+         to be thrown.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>role</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If the user is in the specified role, the tag is taken into account;
+         otherwise, the tag is ignored (skipped).</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>useAttribute</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELUseAttributeTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Use attribute value inside page.</strong></p>
+      <p>Declare a Java variable, and an attribute in the specified scope, 
+      using tile attribute value.</p>
+      <p>Java variable and attribute will have the name specified by 'id', 
+      or the original name if not specified.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>id</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Declared attribute and variable name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>classname</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Class of the declared variable.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Scope of the declared attribute. Default to 'page'.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>name</name>
+         <required>true</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Tile's attribute name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>ignore</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If this attribute is set to true, and the attribute specified by
+         the name does not exist, simply return without error. The default
+         value is false, which will cause a runtime exception to be thrown.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>importAttribute</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELImportAttributeTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+      <p><strong>Import Tile's attribute in specified context.</strong></p>
+      <p>Import attribute from tile to requested scope.
+      Attribute name and scope are optional. If not specified, all tile
+      attributes are imported in page scope.
+      Once imported, an attribute can be used as any other beans from jsp 
+      contexts.</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>name</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         Tile's attribute name. If not specified, all attributes are imported.
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>scope</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Scope into which attribute is imported. Default to page.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>ignore</name>
+         <required>false</required>
+         <rtexprvalue>true</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If this attribute is set to true, and the attribute specified by
+         the name does not exist, simply return without error. The default 
+         value is false, which will cause a runtime exception to be thrown.</p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+   <tag>
+      <name>initComponentDefinitions</name>
+      <tag-class>org.apache.strutsel.taglib.tiles.ELInitDefinitionsTag</tag-class>
+      <body-content>empty</body-content>
+      <description>
+      <![CDATA[
+         <p><strong>Initialize Tile/Component definitions factory.</strong></p>
+         <p>In order to use Tile/Component definitions factory, you need to 
+         initialize the factory. This is generally done in a initializing 
+         servlet. In particular, it is done in "ComponentActionServlet" if you 
+         use it. If you don't initialize factory in a servlet, you can 
+         initialize it using this tag. You need to provide the description file
+         name, and optionally the factory classname. Initialization is done 
+         only once, at the first call of this tag. Subsequent calls
+         are ignored (tag checks existence of the factory).</p>
+      ]]>
+      </description>
+      <attribute>
+         <name>file</name>
+         <required>true</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>Definition file name.</p>
+         ]]>
+         </description>
+      </attribute>
+      <attribute>
+         <name>classname</name>
+         <required>false</required>
+         <rtexprvalue>false</rtexprvalue>
+         <description>
+         <![CDATA[
+         <p>If specified, classname of the factory to create and initialized.
+         </p>
+         ]]>
+         </description>
+      </attribute>
+   </tag>
+</taglib>
+

Propchange: struts/el/trunk/src/tld/struts-tiles-el.tld
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/el/trunk/src/tld/struts-tiles-el.tld
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org