Author: markt Date: Tue Mar 20 20:50:36 2012 New Revision: 1303142 URL: http://svn.apache.org/viewvc?rev=1303142&view=rev Log: Deprecate ELResolverImpl since it supports the deprecated EL implementation Move the default EL resolver to the ELContextImpl so the deprecated code depends on undeprecated code rather than the other way around. Fixes a handful of deprecation warnings
Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELContextImpl.java tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELResolverImpl.java tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ExpressionEvaluatorImpl.java Propchange: tomcat/tc7.0.x/trunk/ ------------------------------------------------------------------------------ Merged /tomcat/trunk:r1303138 Modified: tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELContextImpl.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELContextImpl.java?rev=1303142&r1=1303141&r2=1303142&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELContextImpl.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELContextImpl.java Tue Mar 20 20:50:36 2012 @@ -20,12 +20,20 @@ import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; +import javax.el.ArrayELResolver; +import javax.el.BeanELResolver; +import javax.el.CompositeELResolver; import javax.el.ELContext; import javax.el.ELResolver; import javax.el.FunctionMapper; +import javax.el.ListELResolver; +import javax.el.MapELResolver; +import javax.el.ResourceBundleELResolver; import javax.el.ValueExpression; import javax.el.VariableMapper; +import org.apache.jasper.Constants; + /** * Implementation of ELContext * @@ -62,6 +70,21 @@ public final class ELContextImpl extends } + private static final ELResolver DefaultResolver; + + static { + if (Constants.IS_SECURITY_ENABLED) { + DefaultResolver = null; + } else { + DefaultResolver = new CompositeELResolver(); + ((CompositeELResolver) DefaultResolver).add(new MapELResolver()); + ((CompositeELResolver) DefaultResolver).add(new ResourceBundleELResolver()); + ((CompositeELResolver) DefaultResolver).add(new ListELResolver()); + ((CompositeELResolver) DefaultResolver).add(new ArrayELResolver()); + ((CompositeELResolver) DefaultResolver).add(new BeanELResolver()); + } + } + private final ELResolver resolver; private FunctionMapper functionMapper = NullFunctionMapper; @@ -69,7 +92,7 @@ public final class ELContextImpl extends private VariableMapper variableMapper; public ELContextImpl() { - this(ELResolverImpl.getDefaultResolver()); + this(getDefaultResolver()); } public ELContextImpl(ELResolver resolver) { @@ -102,4 +125,17 @@ public final class ELContextImpl extends this.variableMapper = variableMapper; } + public static ELResolver getDefaultResolver() { + if (Constants.IS_SECURITY_ENABLED) { + CompositeELResolver defaultResolver = new CompositeELResolver(); + defaultResolver.add(new MapELResolver()); + defaultResolver.add(new ResourceBundleELResolver()); + defaultResolver.add(new ListELResolver()); + defaultResolver.add(new ArrayELResolver()); + defaultResolver.add(new BeanELResolver()); + return defaultResolver; + } else { + return DefaultResolver; + } + } } Modified: tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELResolverImpl.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELResolverImpl.java?rev=1303142&r1=1303141&r2=1303142&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELResolverImpl.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ELResolverImpl.java Tue Mar 20 20:50:36 2012 @@ -19,43 +19,22 @@ package org.apache.jasper.el; import java.util.Iterator; -import javax.el.ArrayELResolver; -import javax.el.BeanELResolver; -import javax.el.CompositeELResolver; import javax.el.ELContext; import javax.el.ELException; import javax.el.ELResolver; -import javax.el.ListELResolver; -import javax.el.MapELResolver; import javax.el.PropertyNotFoundException; import javax.el.PropertyNotWritableException; -import javax.el.ResourceBundleELResolver; import javax.servlet.jsp.el.VariableResolver; -import org.apache.jasper.Constants; - +@Deprecated public final class ELResolverImpl extends ELResolver { - private static final ELResolver DefaultResolver; - - static { - if (Constants.IS_SECURITY_ENABLED) { - DefaultResolver = null; - } else { - DefaultResolver = new CompositeELResolver(); - ((CompositeELResolver) DefaultResolver).add(new MapELResolver()); - ((CompositeELResolver) DefaultResolver).add(new ResourceBundleELResolver()); - ((CompositeELResolver) DefaultResolver).add(new ListELResolver()); - ((CompositeELResolver) DefaultResolver).add(new ArrayELResolver()); - ((CompositeELResolver) DefaultResolver).add(new BeanELResolver()); - } - } private final VariableResolver variableResolver; private final ELResolver elResolver; public ELResolverImpl(VariableResolver variableResolver) { this.variableResolver = variableResolver; - this.elResolver = getDefaultResolver(); + this.elResolver = ELContextImpl.getDefaultResolver(); } @Override @@ -157,17 +136,12 @@ public final class ELResolverImpl extend return elResolver.getCommonPropertyType(context, base); } + /** + * @deprecated Use {@link ELContextImpl#getDefaultResolver()} instead. This + * method will be removed in Tomcat 8.0.x onwards. + */ + @Deprecated public static ELResolver getDefaultResolver() { - if (Constants.IS_SECURITY_ENABLED) { - CompositeELResolver defaultResolver = new CompositeELResolver(); - defaultResolver.add(new MapELResolver()); - defaultResolver.add(new ResourceBundleELResolver()); - defaultResolver.add(new ListELResolver()); - defaultResolver.add(new ArrayELResolver()); - defaultResolver.add(new BeanELResolver()); - return defaultResolver; - } else { - return DefaultResolver; - } + return ELContextImpl.getDefaultResolver(); } } Modified: tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ExpressionEvaluatorImpl.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ExpressionEvaluatorImpl.java?rev=1303142&r1=1303141&r2=1303142&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ExpressionEvaluatorImpl.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/jasper/el/ExpressionEvaluatorImpl.java Tue Mar 20 20:50:36 2012 @@ -41,7 +41,7 @@ public final class ExpressionEvaluatorIm FunctionMapper fMapper) throws ELException { try { ELContextImpl ctx = - new ELContextImpl(ELResolverImpl.getDefaultResolver()); + new ELContextImpl(ELContextImpl.getDefaultResolver()); if (fMapper != null) { ctx.setFunctionMapper(new FunctionMapperImpl(fMapper)); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org