From 96070a160a032eedaf357151dbcacd64f5a6b3e3 Mon Sep 17 00:00:00 2001 From: markt Date: Sun, 7 Mar 2010 18:45:50 +0000 Subject: [PATCH] Both TLD and web.xml determine if deferred EL syntax is treated as EL or as a literal git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@920055 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/jasper/compiler/Validator.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/java/org/apache/jasper/compiler/Validator.java b/java/org/apache/jasper/compiler/Validator.java index 0f0220c6a..8489e55c0 100644 --- a/java/org/apache/jasper/compiler/Validator.java +++ b/java/org/apache/jasper/compiler/Validator.java @@ -1075,11 +1075,16 @@ class Validator { || (!n.getRoot().isXmlSyntax() && attrs.getValue(i).startsWith("<%="))); boolean elExpression = false; boolean deferred = false; + double libraryVersion = Double.parseDouble( + tagInfo.getTagLibrary().getRequiredVersion()); + boolean deferredSyntaxAllowedAsLiteral = + pageInfo.isDeferredSyntaxAllowedAsLiteral() || + libraryVersion < 2.1; ELNode.Nodes el = null; if (!runtimeExpression && !pageInfo.isELIgnored()) { - el = ELParser.parse(attrs.getValue(i), pageInfo - .isDeferredSyntaxAllowedAsLiteral()); + el = ELParser.parse(attrs.getValue(i), + deferredSyntaxAllowedAsLiteral); Iterator nodes = el.iterator(); while (nodes.hasNext()) { ELNode node = nodes.next(); -- 2.11.0