Author: remm Date: Tue Oct 31 13:47:45 2006 New Revision: 469669 URL: http://svn.apache.org/viewvc?view=rev&rev=469669 Log: - Better impl of JSP id consumer: actually this was implemented for regular custom tags, but not for simple tags.
Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Generator.java tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Node.java Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Generator.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Generator.java?view=diff&rev=469669&r1=469668&r2=469669 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Generator.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Generator.java Tue Oct 31 13:47:45 2006 @@ -35,7 +35,6 @@ import javax.el.MethodExpression; import javax.el.ValueExpression; -import javax.servlet.jsp.tagext.JspIdConsumer; import javax.servlet.jsp.tagext.TagAttributeInfo; import javax.servlet.jsp.tagext.TagInfo; import javax.servlet.jsp.tagext.TagVariableInfo; @@ -2152,7 +2151,7 @@ out.print(" "); out.print(tagHandlerVar); out.print(" = "); - if (isPoolingEnabled && !(JspIdConsumer.class.isAssignableFrom(tagHandlerClass))) { + if (isPoolingEnabled && !(n.implementsJspIdConsumer())) { out.print("("); out.print(tagHandlerClassName); out.print(") "); @@ -2306,7 +2305,7 @@ .println(".doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) {"); out.pushIndent(); if (!n.implementsTryCatchFinally()) { - if (isPoolingEnabled && !(JspIdConsumer.class.isAssignableFrom(n.getTagHandlerClass()))) { + if (isPoolingEnabled && !(n.implementsJspIdConsumer())) { out.printin(n.getTagHandlerPoolName()); out.print(".reuse("); out.print(tagHandlerVar); @@ -2434,6 +2433,14 @@ generateSetters(n, tagHandlerVar, handlerInfo, true); + // JspIdConsumer (after context has been set) + if (n.implementsJspIdConsumer()) { + out.printin(tagHandlerVar); + out.print(".setJspId(\""); + out.print(createJspId()); + out.println("\");"); + } + // Set the body if (findJspBody(n) == null) { /* @@ -2926,14 +2933,6 @@ TagHandlerInfo handlerInfo, boolean simpleTag) throws JasperException { - // Set the id of the tag - if (JspIdConsumer.class.isAssignableFrom(n.getTagHandlerClass())) { - out.printin(tagHandlerVar); - out.print(".setJspId(\""); - out.print(n.getId()); - out.println("\");"); - } - // Set context if (simpleTag) { // Generate alias map Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Node.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Node.java?view=diff&rev=469669&r1=469668&r2=469669 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Node.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Node.java Tue Oct 31 13:47:45 2006 @@ -1354,8 +1354,6 @@ */ public static class CustomTag extends Node { - private static int id = 0; - private String uri; private String prefix; @@ -1626,10 +1624,6 @@ return this.numCount; } - public String getId() { - return "_" + (++id); - } - public void setScriptingVars(Vector vec, int scope) { switch (scope) { case VariableInfo.AT_BEGIN: --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]