This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 1b68d0370d587cb090b3c351a3420c95fe99e00c
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Oct 19 11:54:52 2022 +0100

    Align JSP API with latest changes - remove deprecated code
---
 java/jakarta/servlet/jsp/JspContext.java           |  28 ------
 java/jakarta/servlet/jsp/JspException.java         |  20 +---
 java/jakarta/servlet/jsp/el/ELException.java       |  80 ---------------
 java/jakarta/servlet/jsp/el/ELParseException.java  |  48 ---------
 java/jakarta/servlet/jsp/el/Expression.java        |  52 ----------
 .../servlet/jsp/el/ExpressionEvaluator.java        | 109 ---------------------
 java/jakarta/servlet/jsp/el/FunctionMapper.java    |  39 --------
 .../servlet/jsp/el/ImplicitObjectELResolver.java   |  21 ----
 .../servlet/jsp/el/ScopedAttributeELResolver.java  |  83 ----------------
 java/jakarta/servlet/jsp/el/VariableResolver.java  |  50 ----------
 java/jakarta/servlet/jsp/el/package.html           |  37 -------
 java/jakarta/servlet/jsp/tagext/BodyTag.java       |  11 ---
 java/jakarta/servlet/jsp/tagext/IterationTag.java  |   5 -
 13 files changed, 2 insertions(+), 581 deletions(-)

diff --git a/java/jakarta/servlet/jsp/JspContext.java 
b/java/jakarta/servlet/jsp/JspContext.java
index 1959e5778a..29168734e9 100644
--- a/java/jakarta/servlet/jsp/JspContext.java
+++ b/java/jakarta/servlet/jsp/JspContext.java
@@ -214,19 +214,6 @@ public abstract class JspContext {
      */
     public abstract JspWriter getOut();
 
-    /**
-     * Provides programmatic access to the ExpressionEvaluator.
-     * The JSP Container must return a valid instance of an
-     * ExpressionEvaluator that can parse EL expressions.
-     *
-     * @return A valid instance of an ExpressionEvaluator.
-     * @since JSP 2.0
-     * @deprecated As of JSP 2.1, replaced by
-     *             JspApplicationContext.getExpressionFactory()
-     */
-    @Deprecated
-    public abstract jakarta.servlet.jsp.el.ExpressionEvaluator 
getExpressionEvaluator();
-
     /**
      * Obtain the ELContext for this JSPContext. Each JSPContext has a 
dedicated
      * ELCOntext.
@@ -235,21 +222,6 @@ public abstract class JspContext {
      */
     public abstract ELContext getELContext();
 
-    /**
-     * Returns an instance of a VariableResolver that provides access to the
-     * implicit objects specified in the JSP specification using this 
JspContext
-     * as the context object.
-     *
-     * @return A valid instance of a VariableResolver.
-     * @since JSP 2.0
-     * @deprecated As of JSP 2.1,
-     *             replaced by jakarta.el.ELContext.getELResolver()
-     *             which can be obtained by
-     *             jspContext.getELContext().getELResolver()
-     */
-    @Deprecated
-    public abstract jakarta.servlet.jsp.el.VariableResolver 
getVariableResolver();
-
     /**
      * Return a new JspWriter object that sends output to the
      * provided Writer.  Saves the current "out" JspWriter,
diff --git a/java/jakarta/servlet/jsp/JspException.java 
b/java/jakarta/servlet/jsp/JspException.java
index 62450d6d76..cbe8f8896a 100644
--- a/java/jakarta/servlet/jsp/JspException.java
+++ b/java/jakarta/servlet/jsp/JspException.java
@@ -50,8 +50,7 @@ public class JspException extends Exception {
     /**
      * Constructs a new <code>JSPException</code> with the specified detail
      * message and cause. The cause is saved for later retrieval by the
-     * <code>java.lang.Throwable.getCause()</code> and {@link #getRootCause()}
-     * methods.
+     * <code>java.lang.Throwable.getCause()</code> method.
      *
      * @see java.lang.Exception#Exception(String, Throwable)
      *
@@ -71,8 +70,7 @@ public class JspException extends Exception {
     /**
      * Constructs a new <code>JSPException</code> with the specified cause.
      * The cause is saved for later retrieval by the
-     * <code>java.lang.Throwable.getCause()</code> and {@link #getRootCause()}
-     * methods.
+     * <code>java.lang.Throwable.getCause()</code> method.
      *
      * @see java.lang.Exception#Exception(Throwable)
      *
@@ -84,18 +82,4 @@ public class JspException extends Exception {
     public JspException(Throwable cause) {
         super(cause);
     }
-
-
-    /**
-     * Returns the exception that caused this JSP exception.
-     *
-     * @return  the <code>Throwable</code> that caused this JSP exception
-     *
-     * @deprecated As of JSP 2.1, replaced by
-     * <code>java.lang.Throwable.getCause()</code>
-     */
-    @Deprecated
-    public Throwable getRootCause() {
-        return getCause();
-    }
 }
diff --git a/java/jakarta/servlet/jsp/el/ELException.java 
b/java/jakarta/servlet/jsp/el/ELException.java
deleted file mode 100644
index 455f9ba9e1..0000000000
--- a/java/jakarta/servlet/jsp/el/ELException.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package jakarta.servlet.jsp.el;
-
-/**
- * Represents any of the exception conditions that arise during the operation
- * evaluation of the evaluator.
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.ELException
- */
-@Deprecated
-public class ELException extends Exception {
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * Creates an ELException with no detail message.
-     **/
-    public ELException() {
-        super();
-    }
-
-    /**
-     * Creates an ELException with the provided detail message.
-     *
-     * @param pMessage
-     *            the detail message
-     **/
-    public ELException(String pMessage) {
-        super(pMessage);
-    }
-
-    /**
-     * Creates an ELException with the given root cause.
-     *
-     * @param pRootCause
-     *            the originating cause of this exception
-     **/
-    public ELException(Throwable pRootCause) {
-        super(pRootCause);
-    }
-
-    // -------------------------------------
-    /**
-     * Creates an ELException with the given detail message and root cause.
-     *
-     * @param pMessage
-     *            the detail message
-     * @param pRootCause
-     *            the originating cause of this exception
-     **/
-    public ELException(String pMessage, Throwable pRootCause) {
-        super(pMessage, pRootCause);
-    }
-
-    // -------------------------------------
-    /**
-     * Returns the root cause.
-     *
-     * @return the root cause of this exception
-     */
-    public Throwable getRootCause() {
-        return getCause();
-    }
-}
diff --git a/java/jakarta/servlet/jsp/el/ELParseException.java 
b/java/jakarta/servlet/jsp/el/ELParseException.java
deleted file mode 100644
index a79fad0fbc..0000000000
--- a/java/jakarta/servlet/jsp/el/ELParseException.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements.  See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License.  You may obtain a copy of the License at
-*
-*     http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-package jakarta.servlet.jsp.el;
-
-
-/**
- * Represents a parsing error encountered while parsing an EL expression.
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.ELException
- */
-@Deprecated
-public class ELParseException extends ELException {
-
-    private static final long serialVersionUID = 1L;
-
-
-    /**
-     * Creates an ELParseException with no detail message.
-     */
-    public ELParseException () {
-        super ();
-    }
-
-
-    /**
-     * Creates an ELParseException with the provided detail message.
-     *
-     * @param pMessage the detail message
-     */
-    public ELParseException (String pMessage) {
-        super (pMessage);
-    }
-}
diff --git a/java/jakarta/servlet/jsp/el/Expression.java 
b/java/jakarta/servlet/jsp/el/Expression.java
deleted file mode 100644
index 57d8811b31..0000000000
--- a/java/jakarta/servlet/jsp/el/Expression.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements.  See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License.  You may obtain a copy of the License at
-*
-*     http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-package jakarta.servlet.jsp.el;
-
-
-/**
- * <p>The abstract class for a prepared expression.</p>
- *
- * <p>An instance of an Expression can be obtained via from an
- * ExpressionEvaluator instance.</p>
- *
- * <p>An Expression may or not have done a syntactic parse of the expression.
- * A client invoking the evaluate() method should be ready for the case
- * where ELParseException exceptions are raised. </p>
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.ValueExpression
- */
-@Deprecated
-public abstract class Expression {
-
-    /**
-     * Evaluates an expression that was previously prepared.  In some
-     * implementations preparing an expression involves full syntactic
-     * validation, but others may not do so.  Evaluating the expression may
-     * raise an ELParseException as well as other ELExceptions due to
-     * run-time evaluation.
-     *
-     * @param vResolver A VariableResolver instance that can be used at
-     *   runtime to resolve the name of implicit objects into Objects.
-     * @return The result of the expression evaluation.
-     *
-     * @exception ELException Thrown if the expression evaluation failed.
-     */
-    public abstract Object evaluate( VariableResolver vResolver )
-        throws ELException;
-}
-
diff --git a/java/jakarta/servlet/jsp/el/ExpressionEvaluator.java 
b/java/jakarta/servlet/jsp/el/ExpressionEvaluator.java
deleted file mode 100644
index db59b26bb6..0000000000
--- a/java/jakarta/servlet/jsp/el/ExpressionEvaluator.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package jakarta.servlet.jsp.el;
-
-/**
- * <p>
- * The abstract base class for an expression-language evaluator. Classes that
- * implement an expression language expose their functionality via this 
abstract
- * class.
- * </p>
- * <p>
- * An instance of the ExpressionEvaluator can be obtained via the JspContext /
- * PageContext
- * </p>
- * <p>
- * The parseExpression() and evaluate() methods must be thread-safe. That is,
- * multiple threads may call these methods on the same ExpressionEvaluator
- * object simultaneously. Implementations should synchronize access if they
- * depend on transient state. Implementations should not, however, assume that
- * only one object of each ExpressionEvaluator type will be instantiated; 
global
- * caching should therefore be static.
- * </p>
- * <p>
- * Only a single EL expression, starting with '${' and ending with '}', can be
- * parsed or evaluated at a time. EL expressions cannot be mixed with static
- * text. For example, attempting to parse or evaluate "
- * <code>abc${1+1}def${1+1}ghi</code>" or even "<code>${1+1}${1+1}</code>" will
- * cause an <code>ELException</code> to be thrown.
- * </p>
- * <p>
- * The following are examples of syntactically legal EL expressions:
- * </p>
- * <ul>
- * <li><code>${person.lastName}</code></li>
- * <li><code>${8 * 8}</code></li>
- * <li><code>${my:reverse('hello')}</code></li>
- * </ul>
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.ExpressionFactory
- */
-@Deprecated
-public abstract class ExpressionEvaluator {
-
-    /**
-     * Prepare an expression for later evaluation. This method should perform
-     * syntactic validation of the expression; if in doing so it detects 
errors,
-     * it should raise an ELParseException.
-     *
-     * @param expression
-     *            The expression to be evaluated.
-     * @param expectedType
-     *            The expected type of the result of the evaluation
-     * @param fMapper
-     *            A FunctionMapper to resolve functions found in the 
expression.
-     *            It can be null, in which case no functions are supported for
-     *            this invocation. The ExpressionEvaluator must not hold on to
-     *            the FunctionMapper reference after returning from
-     *            <code>parseExpression()</code>. The <code>Expression</code>
-     *            object returned must invoke the same functions regardless of
-     *            whether the mappings in the provided
-     *            <code>FunctionMapper</code> instance change between calling
-     *            <code>ExpressionEvaluator.parseExpression()</code> and
-     *            <code>Expression.evaluate()</code>.
-     * @return The Expression object encapsulating the arguments.
-     * @exception ELException
-     *                Thrown if parsing errors were found.
-     */
-    public abstract Expression parseExpression(String expression, Class<?> 
expectedType,
-            FunctionMapper fMapper) throws ELException;
-
-    /**
-     * Evaluates an expression. This method may perform some syntactic
-     * validation and, if so, it should raise an ELParseException error if it
-     * encounters syntactic errors. EL evaluation errors should cause an
-     * ELException to be raised.
-     *
-     * @param expression
-     *            The expression to be evaluated.
-     * @param expectedType
-     *            The expected type of the result of the evaluation
-     * @param vResolver
-     *            A VariableResolver instance that can be used at runtime to
-     *            resolve the name of implicit objects into Objects.
-     * @param fMapper
-     *            A FunctionMapper to resolve functions found in the 
expression.
-     *            It can be null, in which case no functions are supported for
-     *            this invocation.
-     * @return The result of the expression evaluation.
-     * @exception ELException
-     *                Thrown if the expression evaluation failed.
-     */
-    public abstract Object evaluate(String expression, Class<?> expectedType, 
VariableResolver vResolver,
-            FunctionMapper fMapper) throws ELException;
-}
diff --git a/java/jakarta/servlet/jsp/el/FunctionMapper.java 
b/java/jakarta/servlet/jsp/el/FunctionMapper.java
deleted file mode 100644
index 9998961819..0000000000
--- a/java/jakarta/servlet/jsp/el/FunctionMapper.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements.  See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License.  You may obtain a copy of the License at
-*
-*     http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-package jakarta.servlet.jsp.el;
-
-/**
- * <p>The interface to a map between EL function names and methods.</p>
- *
- * <p>Classes implementing this interface may, for instance, consult tag 
library
- * information to resolve the map. </p>
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.FunctionMapper
- */
-@Deprecated
-public interface FunctionMapper {
-    /**
-     * Resolves the specified local name and prefix into a Java.lang.Method.
-     * Returns null if the prefix and local name are not found.
-     *
-     * @param prefix the prefix of the function, or "" if no prefix.
-     * @param localName the short name of the function
-     * @return the result of the method mapping.  Null means no entry found.
-     */
-    public java.lang.reflect.Method resolveFunction(String prefix, String 
localName);
-}
diff --git a/java/jakarta/servlet/jsp/el/ImplicitObjectELResolver.java 
b/java/jakarta/servlet/jsp/el/ImplicitObjectELResolver.java
index 4d35df9dfb..34bd699da9 100644
--- a/java/jakarta/servlet/jsp/el/ImplicitObjectELResolver.java
+++ b/java/jakarta/servlet/jsp/el/ImplicitObjectELResolver.java
@@ -16,14 +16,12 @@
 */
 package jakarta.servlet.jsp.el;
 
-import java.beans.FeatureDescriptor;
 import java.util.AbstractMap;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
@@ -160,25 +158,6 @@ public class ImplicitObjectELResolver extends ELResolver {
         return false;
     }
 
-    @Deprecated(forRemoval = true, since = "JSP 3.1")
-    @Override
-    public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext 
context, Object base) {
-        List<FeatureDescriptor> feats = new ArrayList<>(SCOPE_NAMES.length);
-        FeatureDescriptor feat;
-        for (String scopeName : SCOPE_NAMES) {
-            feat = new FeatureDescriptor();
-            feat.setDisplayName(scopeName);
-            feat.setExpert(false);
-            feat.setHidden(false);
-            feat.setName(scopeName);
-            feat.setPreferred(true);
-            feat.setValue(RESOLVABLE_AT_DESIGN_TIME, Boolean.TRUE);
-            feat.setValue(TYPE, String.class);
-            feats.add(feat);
-        }
-        return feats.iterator();
-    }
-
     @Override
     public Class<String> getCommonPropertyType(ELContext context, Object base) 
{
         if (base == null) {
diff --git a/java/jakarta/servlet/jsp/el/ScopedAttributeELResolver.java 
b/java/jakarta/servlet/jsp/el/ScopedAttributeELResolver.java
index 0246f49421..5908a4832c 100644
--- a/java/jakarta/servlet/jsp/el/ScopedAttributeELResolver.java
+++ b/java/jakarta/servlet/jsp/el/ScopedAttributeELResolver.java
@@ -16,11 +16,6 @@
  */
 package jakarta.servlet.jsp.el;
 
-import java.beans.FeatureDescriptor;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
 import java.util.Objects;
 
 import jakarta.el.ELContext;
@@ -97,84 +92,6 @@ public class ScopedAttributeELResolver extends ELResolver {
         return false;
     }
 
-    @Deprecated(forRemoval = true, since = "JSP 3.1")
-    @Override
-    public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext 
context, Object base) {
-
-        PageContext ctxt = (PageContext) context.getContext(JspContext.class);
-        List<FeatureDescriptor> list = new ArrayList<>();
-        Enumeration<String> e;
-        Object value;
-        String name;
-
-        e = ctxt.getAttributeNamesInScope(PageContext.PAGE_SCOPE);
-        while (e.hasMoreElements()) {
-            name = e.nextElement();
-            value = ctxt.getAttribute(name, PageContext.PAGE_SCOPE);
-            FeatureDescriptor descriptor = new FeatureDescriptor();
-            descriptor.setName(name);
-            descriptor.setDisplayName(name);
-            descriptor.setExpert(false);
-            descriptor.setHidden(false);
-            descriptor.setPreferred(true);
-            descriptor.setShortDescription("page scoped attribute");
-            descriptor.setValue("type", value.getClass());
-            descriptor.setValue("resolvableAtDesignTime", Boolean.FALSE);
-            list.add(descriptor);
-        }
-
-        e = ctxt.getAttributeNamesInScope(PageContext.REQUEST_SCOPE);
-        while (e.hasMoreElements()) {
-            name = e.nextElement();
-            value = ctxt.getAttribute(name, PageContext.REQUEST_SCOPE);
-            FeatureDescriptor descriptor = new FeatureDescriptor();
-            descriptor.setName(name);
-            descriptor.setDisplayName(name);
-            descriptor.setExpert(false);
-            descriptor.setHidden(false);
-            descriptor.setPreferred(true);
-            descriptor.setShortDescription("request scope attribute");
-            descriptor.setValue("type", value.getClass());
-            descriptor.setValue("resolvableAtDesignTime", Boolean.FALSE);
-            list.add(descriptor);
-        }
-
-        if (ctxt.getSession() != null) {
-            e = ctxt.getAttributeNamesInScope(PageContext.SESSION_SCOPE);
-            while (e.hasMoreElements()) {
-                name = e.nextElement();
-                value = ctxt.getAttribute(name, PageContext.SESSION_SCOPE);
-                FeatureDescriptor descriptor = new FeatureDescriptor();
-                descriptor.setName(name);
-                descriptor.setDisplayName(name);
-                descriptor.setExpert(false);
-                descriptor.setHidden(false);
-                descriptor.setPreferred(true);
-                descriptor.setShortDescription("session scoped attribute");
-                descriptor.setValue("type", value.getClass());
-                descriptor.setValue("resolvableAtDesignTime", Boolean.FALSE);
-                list.add(descriptor);
-            }
-        }
-
-        e = ctxt.getAttributeNamesInScope(PageContext.APPLICATION_SCOPE);
-        while (e.hasMoreElements()) {
-            name = e.nextElement();
-            value = ctxt.getAttribute(name, PageContext.APPLICATION_SCOPE);
-            FeatureDescriptor descriptor = new FeatureDescriptor();
-            descriptor.setName(name);
-            descriptor.setDisplayName(name);
-            descriptor.setExpert(false);
-            descriptor.setHidden(false);
-            descriptor.setPreferred(true);
-            descriptor.setShortDescription("application scoped attribute");
-            descriptor.setValue("type", value.getClass());
-            descriptor.setValue("resolvableAtDesignTime", Boolean.FALSE);
-            list.add(descriptor);
-        }
-        return list.iterator();
-    }
-
     @Override
     public Class<String> getCommonPropertyType(ELContext context, Object base) 
{
         if (base == null) {
diff --git a/java/jakarta/servlet/jsp/el/VariableResolver.java 
b/java/jakarta/servlet/jsp/el/VariableResolver.java
deleted file mode 100644
index 7f3c3b7a24..0000000000
--- a/java/jakarta/servlet/jsp/el/VariableResolver.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package jakarta.servlet.jsp.el;
-
-/**
- * <p>
- * This class is used to customize the way an ExpressionEvaluator resolves
- * variable references at evaluation time. For example, instances of this class
- * can implement their own variable lookup mechanisms, or introduce the notion
- * of "implicit variables" which override any other variables. An instance of
- * this class should be passed when evaluating an expression.
- * </p>
- * <p>
- * An instance of this class includes the context against which resolution will
- * happen
- * </p>
- *
- * @since JSP 2.0
- * @deprecated As of JSP 2.1, replaced by jakarta.el.ELResolver
- */
-@Deprecated
-public interface VariableResolver {
-
-    /**
-     * Resolves the specified variable. Returns null if the variable is not
-     * found.
-     *
-     * @param pName
-     *            the name of the variable to resolve
-     * @return the result of the variable resolution
-     * @throws ELException
-     *             if a failure occurred while trying to resolve the given
-     *             variable
-     */
-    public Object resolveVariable(String pName) throws ELException;
-}
diff --git a/java/jakarta/servlet/jsp/el/package.html 
b/java/jakarta/servlet/jsp/el/package.html
deleted file mode 100644
index 38618f391b..0000000000
--- a/java/jakarta/servlet/jsp/el/package.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<html>
-<head>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-</head>
-<body bgcolor="white">
-
-Classes and interfaces for the JSP 2.0 Expression Language API.
-
-<p>
-The JavaServer Pages(tm) (JSP) 2.0 specification provides a portable
-API for evaluating "EL Expressions".  As of JSP 2.0, EL expressions can
-be placed directly in the template text of JSP pages and tag files.
-<p>
-This package contains a number of classes and interfaces that describe
-and define programmatic access to the Expression Language evaluator.
-This API can also be used by an implementation of JSP to evaluate the
-expressions, but other implementations, like open-coding into Java
-bytecodes, are allowed.  This package is intended to have no dependencies
-on other portions of the JSP 2.0 specification.
-</body>
-</html>
diff --git a/java/jakarta/servlet/jsp/tagext/BodyTag.java 
b/java/jakarta/servlet/jsp/tagext/BodyTag.java
index abee1c1c38..f1b5d0720d 100644
--- a/java/jakarta/servlet/jsp/tagext/BodyTag.java
+++ b/java/jakarta/servlet/jsp/tagext/BodyTag.java
@@ -100,17 +100,6 @@ import jakarta.servlet.jsp.JspException;
  */
 public interface BodyTag extends IterationTag {
 
-    /**
-     * Deprecated constant that has the same value as EVAL_BODY_BUFFERED and
-     * EVAL_BODY_AGAIN. This name has been marked as deprecated to encourage 
the
-     * use of the two different terms, which are much more descriptive.
-     *
-     * @deprecated As of Java JSP API 1.2, use BodyTag.EVAL_BODY_BUFFERED or
-     *             IterationTag.EVAL_BODY_AGAIN.
-     */
-    @Deprecated
-    public static final int EVAL_BODY_TAG = 2;
-
     /**
      * Request the creation of new buffer, a BodyContent on which to evaluate
      * the body of this tag. Returned from doStartTag when it implements
diff --git a/java/jakarta/servlet/jsp/tagext/IterationTag.java 
b/java/jakarta/servlet/jsp/tagext/IterationTag.java
index 65413b7acc..252fdbe510 100644
--- a/java/jakarta/servlet/jsp/tagext/IterationTag.java
+++ b/java/jakarta/servlet/jsp/tagext/IterationTag.java
@@ -77,12 +77,7 @@ public interface IterationTag extends Tag {
     /**
      * Request the reevaluation of some body.
      * Returned from doAfterBody.
-     *
-     * For compatibility with JSP 1.1, the value is carefully selected
-     * to be the same as the, now deprecated, BodyTag.EVAL_BODY_TAG,
-     *
      */
-
     public static final int EVAL_BODY_AGAIN = 2;
 
     /**


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to