Author: remm
Date: Tue Oct 31 06:27:22 2006
New Revision: 469498
URL: http://svn.apache.org/viewvc?view=rev&rev=469498
Log:
- Taglibs have their own version number, so isExpression gets an adjustment
allowing not checking for deferred
expressions.
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Validator.java
Modified: tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Validator.java
URL:
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Validator.java?view=diff&rev=469498&r1=469497&r2=469498
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Validator.java
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/jasper/compiler/Validator.java Tue Oct
31 06:27:22 2006
@@ -1008,8 +1008,9 @@
} else {
// Attribute does not accept any expressions.
// Make sure its value does not contain any.
- if (isExpression(n, attrs.getValue(i))) {
- err .jspError(n,
"jsp.error.attribute.custom.non_rt_with_expr",
+ if (isExpression(n, attrs.getValue(i),
+
!tagInfo.getTagLibrary().getRequiredVersion().equals("2.0"))) {
+ err.jspError(n,
"jsp.error.attribute.custom.non_rt_with_expr",
tldAttrs[j].getName());
}
jspAttrs[i] = new Node.JspAttribute(tldAttrs[j],
@@ -1193,11 +1194,11 @@
* Checks to see if the given attribute value represents a runtime or
EL
* expression.
*/
- private boolean isExpression(Node n, String value) {
+ private boolean isExpression(Node n, String value, boolean
checkDeferred) {
if ((n.getRoot().isXmlSyntax() && value.startsWith("%="))
|| (!n.getRoot().isXmlSyntax() && value.startsWith("<%="))
|| (value.indexOf("${") != -1 && !pageInfo.isELIgnored())
- || (value.indexOf("#{") != -1 && !pageInfo.isELIgnored()
+ || (checkDeferred && value.indexOf("#{") != -1 &&
!pageInfo.isELIgnored()
&& !pageInfo.isDeferredSyntaxAllowedAsLiteral()))
return true;
else
@@ -1213,7 +1214,7 @@
String actionName) throws JasperException {
if (n.getAttributes() != null
&& n.getAttributes().getValue(attrName) != null
- && isExpression(n, n.getAttributes().getValue(attrName))) {
+ && isExpression(n, n.getAttributes().getValue(attrName),
true)) {
err.jspError(n,
"jsp.error.attribute.standard.non_rt_with_expr",
attrName, actionName);
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]