<s1 title="Tag Library Configuration">

<p>The tag library configuration file is typically provided by the tag library
vendor.  In general, users of the tag library will only need to configure
the <var/taglib/> to point to the vendor's configuration.</p>

<example title='resin.conf'>
&lt;web-app>
&lt;taglib taglib-uri='/mytag/test'
        taglib-location='/MyTag.tlb'/>
&lt;/web-app>
</example>

<p>As a shortcut during development, you can pull the taglib definition
into the resin.conf:</p>

<example>
&lt;web-app>
&lt;taglib taglib-uri='/mytag/test'>
  &lt;tag name='bar' tagclass='test.NoTag'/>
  &lt;tag name='foo' tagclass='test.MyTag' teiclass='test.MyTagInfo'/>
&lt;/web-app>
</example>

<p>Resin will detect any META-INF/*.tld and WEB-INF/*.tld
automatically, so you don't need to add them individually.  (The new behavior
is part of the Servlet 2.3 spec.)</p>

<objsummary/>

<s2 name='taglib' title='taglib' version='Resin 1.1'>

<defun name=taglib title='taglib'>
<p>Defines a tag library.  The <var/taglib/> declaration will contain
several <var/tag/> declarations.</p>

<deftable>
<tr><th>Attribute<th>Meaning
<tr><td>version<td>Version of the tag library.
<tr><td>jspversion<td>Expected JSP version
<tr><td>shortname<td>A short name for the tag library.  For IDEs, this may
give a suggested tag prefix.
<tr><td>uri<td>A unique identifier for the tag library.
<tr><td>info<td>An information string for the tag library.
</deftable>
</defun>

<defun name=tag title='tag'>
<p>Defines a tag.  The <var/tag/> may contain several <var/attribute/>
declarations. </p>

<deftable>
<tr><th>Attribute<th>Meaning
<tr><td>name<td>The tag name
<tr><td>tagclass<td>The tag class
<tr><td>teiclass<td>The TagExtraInfo class (used for validation and
declaring implicit variables.
<tr><td>bodycontent<td>False if the tag should always be empty.
<tr><td>info<td>An information string for the tag.
</deftable>
</defun>

<defun name=attribute title='attribute'>
<p>Defines a tag attribute.</p>

<deftable>
<tr><th>Attribute<th>Meaning
<tr><td>name<td>The attribute name.
<tr><td>required<td>True if the tag is required.
<tr><td>rtexprvalue<td>True if the tag can use a real time expression.
</deftable>
</defun>

</s2>
</s1>

