On 28/06/2011 01:08, kkoli...@apache.org wrote: > Modified: tomcat/tc6.0.x/trunk/STATUS.txt > URL: > http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1140383&r1=1140382&r2=1140383&view=diff > ============================================================================== > --- tomcat/tc6.0.x/trunk/STATUS.txt (original) > +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Jun 28 00:08:55 2011 > @@ -169,7 +169,14 @@ PATCHES PROPOSED TO BACKPORT: > http://svn.apache.org/viewvc?rev=1138950&view=rev > http://svn.apache.org/viewvc?rev=1138953&view=rev > +1: markt, schultz > - -1: > + -1: kkolinko: 1) It would be OK if it were mangling only reserved words > + (where the tag wouldn't compile previously, so there were no > regressions), > + but JspUtils.makeJavaIdentifier() mangles '_' character, which will break > + code that was previously working. E.g. <%=hello_world%> > + 2) Maybe it would be better to prefix the names with [_]jsp_ and use some > + numbered suffix, to never collide with names that people may use in their > + code.
I don't see anything in the JSP specification that says tag file attributes must be exposed as Java variables with the same name. Given that a tag file attribute can have any name valid in XML, that requirement would be impossible to meet since may of those names would be invalid as Java identifiers. There is a requirement to expose attributes (with the same name) as page scoped variables. If I switch the test case to use ${hello_world} rather than <%=hello_world%> it works. However, that causes it's own set of problems when a Java keyword is used as an attribute name due to the restrictions of the EL specification. AFAICT, the only solution that is guaranteed (by the specification) to work for any attribute name in a tag file is: ${pageScope['attributename']} Unless I have missed something in the specification (always a possibility) that anything else works is a fortunate side-effect of the implementation. On this basis, I think the new behaviour is compliant with the specification. That said, I take the point regarding regressions. I'm sure lots of folks will have used <%=attributeName%> or ${attributeName} as a shortcut although I don't currently see anything to support that usage in the JSP specification. I'll see what alternative solutions are available. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org