You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Sean Dockery <sd...@securac.net> on 2004/11/18 01:09:25 UTC
Custom tag attribute runtime expression containing and delimited by quotes. Supported in Tomcat, but not other JSP containers. What is the standard?
Hello,
We recently came upon an issue in migrating our web application from Tomcat
4.1.x to SAP Web AS 6.4 SP7.
Here is an example of the offending code (which involves indexed beans
managed by a Struts ActionForm):
<logic:iterate ... indexId="offset">
Name: <html:text property="<%= "people[" + offset + "].name" %>"/>
</logic:iterate>
The quotes embedded in the property attribute's runtime expression work
fine under Tomcat, but failed under SAP Web AS during JSP translation. The
Web AS JSP compiler sees the quote before the word people as the closing
delimiter for the property attribute value.
We found that the following variations work in both Tomcat and SAP Web AS.
<html:text property='<%= "people[" + offset + "].name" %>'/>
(using apostrophes instead of quotes to delimit the attribute values)
<html:text property="<%= \"people[\" + offset + \"].name\" %>"/>
(escaping the embedded quotes)
The former solution seems to be sanctioned (according to Google, anyway).
The latter solution (though looking to be pure evil) seems to solve a
situation where you would have both quotes and apostrophes in the same
attribute value.
Is there anything in the (current or previous) JSP specification dealing
with quotes embedded in runtime expressions? (It is an unfortunately happy
coincidence that Jasper supports embedded quotes; anyone else enjoying this
behaviour should be aware that it may not be supported by other
containers.)
Thanks for your precious time.
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: Custom tag attribute runtime expression containing and delimited by quotes. Supported in Tomcat, but not other JSP containers. What is the standard?
Posted by Sean Dockery <sd...@securac.net>.
Hmmm... We found in section JSP 2.6 (page 41) in the Core Syntax and
Semantics chapter of the JSP 1.2 specification that this...
<mytags:tag value="<%= "hi!" %>" />
...is expressly illegal.
Should this be considered to be a bug in Jasper?
"Sean Dockery" <sd...@securac.net> wrote in message
news:cngp7l$6c2$1@sea.gmane.org...
> Hello,
>
> We recently came upon an issue in migrating our web application from
> Tomcat 4.1.x to SAP Web AS 6.4 SP7.
>
> Here is an example of the offending code (which involves indexed beans
> managed by a Struts ActionForm):
>
> <logic:iterate ... indexId="offset">
> Name: <html:text property="<%= "people[" + offset + "].name" %>"/>
> </logic:iterate>
>
> The quotes embedded in the property attribute's runtime expression work
> fine under Tomcat, but failed under SAP Web AS during JSP translation.
> The Web AS JSP compiler sees the quote before the word people as the
> closing delimiter for the property attribute value.
>
> We found that the following variations work in both Tomcat and SAP Web
> AS.
>
> <html:text property='<%= "people[" + offset + "].name" %>'/>
> (using apostrophes instead of quotes to delimit the attribute values)
>
> <html:text property="<%= \"people[\" + offset + \"].name\" %>"/>
> (escaping the embedded quotes)
>
> The former solution seems to be sanctioned (according to Google, anyway).
> The latter solution (though looking to be pure evil) seems to solve a
> situation where you would have both quotes and apostrophes in the same
> attribute value.
>
> Is there anything in the (current or previous) JSP specification dealing
> with quotes embedded in runtime expressions? (It is an unfortunately
> happy coincidence that Jasper supports embedded quotes; anyone else
> enjoying this behaviour should be aware that it may not be supported by
> other containers.)
>
> Thanks for your precious time.
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org