tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wei Zhao <weizha...@yahoo.com.cn>
Subject Scripting variable is not generated
Date Tue, 13 Sep 2005 23:00:49 GMT
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: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message