Hello,

I've attached a patch for a couple issues.  First, I've added a
filename attribute to the <jsptaglib> tag so that you can specify a
name other than "taglib.tld".  Second, I've updated taglib_tld.j to
work with JSP version 1.2.  Some things changed in the DTD like
<tagclass> is now <tag-class>.

-Dave
Index: core/resources/xdoclet/web/taglib_tld.j
===================================================================
RCS file: /cvsroot/xdoclet/xdoclet/core/resources/xdoclet/web/taglib_tld.j,v
retrieving revision 1.7
diff -u -r1.7 taglib_tld.j
--- core/resources/xdoclet/web/taglib_tld.j     2001/09/19 16:26:11     1.7
+++ core/resources/xdoclet/web/taglib_tld.j     2001/10/22 06:28:06
@@ -59,6 +59,7 @@
 
   <XDoclet:forAllClasses 
type="javax.servlet.jsp.tagext.Tag,javax.servlet.jsp.tagext.TagSupport">
    <tag>
+   <XDoclet:ifConfigParamEquals paramName="Jspversion" value="1.1">
       <name><XDoclet:classTagValue tagName="jsp:tag" paramName="name"/></name>
       <tagclass><XDoclet:fullClassName/></tagclass>
      <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="tei-class">
@@ -127,6 +128,77 @@
 
      <XDoclet:merge file="tag-example-{0}.xml">
      </XDoclet:merge>
+   </XDoclet:ifConfigParamEquals>
+   <XDoclet:ifConfigParamEquals paramName="Jspversion" value="1.2">
+      <name><XDoclet:classTagValue tagName="jsp:tag" paramName="name"/></name>
+      <tag-class><XDoclet:fullClassName/></tag-class>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="tei-class">
+      <tei-class><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="tei-class"/></tei-class>
+     </XDoclet:ifHasClassTag>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="body-content" 
+values="JSP,empty,tagdependent">
+      <body-content><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="body-content"/></body-content>
+     </XDoclet:ifHasClassTag>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="display-name">
+      <display-name><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="display-name"/></display-name>
+     </XDoclet:ifHasClassTag>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="small-icon">
+      <small-icon><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="small-icon"/></small-icon>
+     </XDoclet:ifHasClassTag>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="large-icon">
+      <large-icon><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="large-icon"/></large-icon>
+     </XDoclet:ifHasClassTag>
+     <XDoclet:ifHasClassTag tagName="jsp:tag" paramName="description">
+      <description><XDoclet:classTagValue tagName="jsp:tag" 
+paramName="description"/></description>
+     </XDoclet:ifHasClassTag>
+
+     <XDoclet:forAllClassTags tagName="jsp:variable">
+      <variable>
+       <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="name-given">
+         <name-given><XDoclet:classTagValue tagName="jsp:variable" 
+paramName="name-given"/></name-given>
+       </XDoclet:ifHasClassTag>
+       <XDoclet:ifDoesntHaveClassTag tagName="jsp:variable" paramName="name-given">
+        <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="name-from-attribute">
+         <name-from-attribute><XDoclet:classTagValue tagName="jsp:variable" 
+paramName="name-from-attribute"/></name-from-attribute>
+        </XDoclet:ifHasClassTag>
+       </XDoclet:ifDoesntHaveClassTag>
+       <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="class">
+         <variable-class><XDoclet:classTagValue tagName="jsp:variable" 
+paramName="class"/></variable-class>
+       </XDoclet:ifHasClassTag>
+       <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="declare">
+         <declare><XDoclet:classTagValue tagName="jsp:variable" paramName="declare" 
+values="true,false,yes,no"/></declare>
+       </XDoclet:ifHasClassTag>
+       <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="scope">
+         <scope><XDoclet:classTagValue tagName="jsp:variable" paramName="scope" 
+values="NESTED,AT_BEGIN,AT_END"/></scope>
+       </XDoclet:ifHasClassTag>
+        <XDoclet:ifHasClassTag tagName="jsp:variable" paramName="description">
+         <description><XDoclet:classTagValue tagName="jsp:variable" 
+paramName="description"/></description>
+        </XDoclet:ifHasClassTag>
+      </variable>
+     </XDoclet:forAllClassTags>
+
+    <XDoclet:forAllMethods>
+     <XDoclet:ifHasMethodTag tagName="jsp:attribute">
+      <attribute>
+         <name><XDoclet:propertyName/></name>
+        <XDoclet:ifHasMethodTag tagName="jsp:attribute" paramName="required">
+         <required><XDoclet:methodTagValue tagName="jsp:attribute" 
+paramName="required" values="true,false,yes,no"/></required>
+        </XDoclet:ifHasMethodTag>
+        <XDoclet:ifHasMethodTag tagName="jsp:attribute" paramName="rtexprvalue">
+         <rtexprvalue><XDoclet:methodTagValue tagName="jsp:attribute" 
+paramName="rtexprvalue" values="true,false,yes,no"/></rtexprvalue>
+        </XDoclet:ifHasMethodTag>
+        <XDoclet:ifHasMethodTag tagName="jsp:attribute" paramName="type">
+         <type><XDoclet:methodType/></type>
+        </XDoclet:ifHasMethodTag>
+        <XDoclet:ifHasMethodTag tagName="jsp:attribute" paramName="description">
+         <description><XDoclet:methodTagValue tagName="jsp:attribute" 
+paramName="description"/></description>
+        </XDoclet:ifHasMethodTag>
+      </attribute>
+     </XDoclet:ifHasMethodTag>
+    </XDoclet:forAllMethods>
+
+     <XDoclet:merge file="tag-example-{0}.xml">
+     </XDoclet:merge>
+   </XDoclet:ifConfigParamEquals>
    </tag>
   </XDoclet:forAllClasses>
 
Index: core/src/xdoclet/web/JspTaglibSubTask.java
===================================================================
RCS file: /cvsroot/xdoclet/xdoclet/core/src/xdoclet/web/JspTaglibSubTask.java,v
retrieving revision 1.6
diff -u -r1.6 JspTaglibSubTask.java
--- core/src/xdoclet/web/JspTaglibSubTask.java  2001/08/14 22:03:07     1.6
+++ core/src/xdoclet/web/JspTaglibSubTask.java  2001/10/22 06:28:06
@@ -32,8 +32,8 @@
        protected String   smallicon = "";
        protected String   largeicon = "";
        protected String   description = "";
+       protected String   filename = "taglib.tld";
        private static String DEFAULT_TEMPLATE_FILE = "taglib_tld.j";
-       private static String GENERATED_FILE_NAME = "taglib.tld";
 
        public void setXmlencoding( String xmlEncoding )
        {
@@ -80,6 +80,11 @@
                description = new_description;
        }
 
+       public void setFilename( String new_filename )
+       {
+               filename = new_filename;
+       }
+
        public String getXmlencoding()
        {
                return xmlEncoding;
@@ -125,11 +130,16 @@
                return description;
        }
 
+       public String getFilename()
+       {
+               return filename;
+       }
+
        public void execute() throws BuildException
        {
                Category cat = getCategory( JspTaglibSubTask.class, "execute" );
-               System.out.println( "Create " + GENERATED_FILE_NAME );
-               generateFileUsingTemplate( GENERATED_FILE_NAME, DEFAULT_TEMPLATE_FILE 
);
+               System.out.println( "Create " + filename );
+               generateFileUsingTemplate( filename, DEFAULT_TEMPLATE_FILE );
        }
 
        /**

Reply via email to