Author: wsmoak
Date: Fri Sep  1 21:42:42 2006
New Revision: 439531

URL: http://svn.apache.org/viewvc?rev=439531&view=rev
Log:
Bring over the documentation as-is from the Struts Tiles 1.3.5 TLD.
Update the FAQ.
SB-21
Modified:
    struts/sandbox/trunk/tiles/src/site/fml/faq.fml
    
struts/sandbox/trunk/tiles/tiles-core/src/main/resources/META-INF/tiles-core.tld

Modified: struts/sandbox/trunk/tiles/src/site/fml/faq.fml
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/tiles/src/site/fml/faq.fml?rev=439531&r1=439530&r2=439531&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/src/site/fml/faq.fml (original)
+++ struts/sandbox/trunk/tiles/src/site/fml/faq.fml Fri Sep  1 21:42:42 2006
@@ -18,7 +18,7 @@
 -->
 <faqs title="Tiles 2 FAQ">
     <part id="changes">
-        <faq id="attribute">
+        <faq id="name">
             <question>What happened to 'attribute' and 'definition'?</question>
             <answer>
                 <p>The 'attribute' and 'definition' tag attributes were 
removed.
@@ -26,13 +26,36 @@
                 </p>
             </answer>
         </faq>
+        <faq id="template">
+            <question>What happened to 'page' and 'component'?</question>
+            <answer>
+                <p>The 'page' and 'component' tag attributes were removed.
+                    Use 'template' instead.
+                </p>
+            </answer>
+        </faq>
         <faq id="bean">
-            <question>What happened to 'beanName' and 
'beanProperty'?</question>
+            <question>What happened to beanName, beanProperty and beanScope?
+            </question>
             <answer>
-                <p>The 'beanName' and 'beanProperty' tag attributes were 
removed
-                    with no replacement. Use EL instead. For example:
+                <p>The 'beanName', 'beanProperty', and 'beanScope' tag 
attributes
+                    were removed with no replacement. Use EL instead. For 
example:
                 </p>
                 <code>&lt;tiles:put name="foo" value="${foo.bar}"/&gt;</code>
+            </answer>
+        </faq>
+        <faq id="todo1">
+            <question>What happened to controllerURL and controllerClass?
+            </question>
+            <answer>
+                <p>TODO - Did this change to 'type'?</p>
+            </answer>
+        </faq>
+        <faq id="todo2">
+            <question>What happened to the 'id' attribute of DefinitionTag?
+            </question>
+            <answer>
+                <p>TODO - Did this change to 'name'?</p>
             </answer>
         </faq>
     </part>

Modified: 
struts/sandbox/trunk/tiles/tiles-core/src/main/resources/META-INF/tiles-core.tld
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/tiles/tiles-core/src/main/resources/META-INF/tiles-core.tld?rev=439531&r1=439530&r2=439531&view=diff
==============================================================================
--- 
struts/sandbox/trunk/tiles/tiles-core/src/main/resources/META-INF/tiles-core.tld
 (original)
+++ 
struts/sandbox/trunk/tiles/tiles-core/src/main/resources/META-INF/tiles-core.tld
 Fri Sep  1 21:42:42 2006
@@ -3,40 +3,134 @@
     "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" 
     "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd";>
 <taglib>
-   <tlib-version>0.2</tlib-version>
+   <tlib-version>2.0</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>tiles</short-name>
    <uri>http://struts.apache.org/tags-tiles</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.tiles.taglib.InsertTag</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>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>flush</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <type>boolean</type>
+         <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>
          <type>boolean</type>
+         <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>type</name>
@@ -48,143 +142,367 @@
       <name>definition</name>
       <tag-class>org.apache.tiles.taglib.DefinitionTag</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>name</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>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.tiles.taglib.PutTag</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>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>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.tiles.taglib.PutListTag</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.tiles.taglib.AddTag</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>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>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.tiles.taglib.GetTag</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>
          <type>boolean</type>
+         <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>
          <type>boolean</type>
+         <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.tiles.taglib.GetAttributeTag</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>
          <type>boolean</type>
+         <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>
@@ -192,67 +510,157 @@
       <tag-class>org.apache.tiles.taglib.UseAttributeTag</tag-class>
       <tei-class>org.apache.tiles.taglib.UseAttributeTei</tei-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>
          <type>boolean</type>
+         <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.tiles.taglib.ImportAttributeTag</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[
+         <p>Tile's attribute name. If not specified, all attributes are
+         imported.</p>
+         ]]>
+         </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>
          <type>boolean</type>
+         <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.tiles.taglib.InitDefinitionsTag</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>


Reply via email to