You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2003/07/19 22:54:42 UTC
DO NOT REPLY [Bug 21711] -
Error when compiling a JSP that uses a TLD 1.1
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21711>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21711
Error when compiling a JSP that uses a TLD 1.1
ecarmich@alumni.rice.edu changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
------- Additional Comments From ecarmich@alumni.rice.edu 2003-07-19 20:54 -------
I believe Tomcat's behavior here is consistent with the JSP 1.1
specification. Your example works if the attribute is renamed to something
other than "id", or if the attribute value is not specified as a request-time
attribute value. The error only occurs when specifying a request-time
attribute value for a parameter named "id".
The spec mandates special treatment of attributes named "id", as detailed in
section 2.12.2:
'The id="name" attribute/value tuple in an element has special meaning to a
JSP container, both at page translation time, and at client request processing
time; in particular:
� the name must be unique within the translation unit, and identifies the
particular element in which it appears to the JSP container and page.'
"name must be unique within the translation unit" to me implies "name" cannot
be a request-time attribute value, as if it were, there would be no way to
verify uniqueness at translation time. The spec seems to make this explicit
in a parenthetical in section 5.1.3.2: "note that id must be a translation-
time attribute".
The code seems to be consistent with this interpretation. The actual
exception is thrown by code that I don't have access to, but it's clear from
the Javadocs that the problem is that TagData.getID expects the value of
the "id" attribute to be a String (as it would be if it were a translation-
time attribute), whereas Tomcat has set it to TagData.REQUEST_TIME_VALUE, as
is proper for a request-time attribute value.
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org