Have a look at http://issues.apache.org/bugzilla/show_bug.cgi?id=21390
and http://issues.apache.org/bugzilla/show_bug.cgi?id=23425
Mark
Wei Zhao wrote:
I am migrating some code from tomcat 4.* to 5.5.
However, I got some compilation error regarding the
scripting variable from taglib.
This is the definition of the scripting variable in
TEI file:
VariableInfo vSystemName = new VariableInfo(
"SystemName",
"String",
true,
VariableInfo.AT_END
);
This is how this tag is used in the JSP page:
If( some condition )
{
<system:getSystemName/>
<%=SystemName%>
}
else
{
<system:getSystemName/>
<%=SystemName%>
}
But a got a Java compilation error saying the second
SystemName cannot be resolved.
I looked into the generated java code and it seems
that only one SystemName is declared which is within
the “if� and not visible in the “else�. If I
remove the “system:getSystemName� inside if,
“SystemName� is now declared inside “else�.
This works differently from Tomcat 4.* which always
generate the declaration of the “SystemName� in
above case. And I don’t think it’s consistent with
the spec. The variable is defined as “AT_END�
scope and “declare� is set to true. So it should
always be declared or a lot of existing code will be
broken.
Any thoughts? Did I miss anything?
Thanks
Wei
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]