# Deprecated API

## Contents

- Deprecated Interfaces
- Deprecated Classes
- Deprecated Methods
- Deprecated Constructors

Deprecated Interfaces
Interface and Description
javax.servlet.http.HttpSessionContext As of Java(tm) Servlet API 2.1 for security reasons, with no replacement. This interface will be removed in a future version of this API.
javax.servlet.SingleThreadModel As of Java Servlet API 2.4, with no direct replacement.

Deprecated Classes
Class and Description
javax.servlet.http.HttpUtils As of Java(tm) Servlet API 2.3. These methods were only useful with the default encoding and have been moved to the request interfaces.

Deprecated Methods
Method and Description
javax.servlet.http.HttpServletResponseWrapper.encodeRedirectUrl(String) As of Version 3.0 of the Java Servlet API
javax.servlet.http.HttpServletResponse.encodeRedirectUrl(String) As of version 2.1, use encodeRedirectURL(String url) instead
javax.servlet.http.HttpServletResponseWrapper.encodeUrl(String) As of Version 3.0 of the Java Servlet API
javax.servlet.http.HttpServletResponse.encodeUrl(String) As of version 2.1, use encodeURL(String url) instead
javax.servlet.http.HttpSessionContext.getIds() As of Java Servlet API 2.1 with no replacement. This method must return an empty `Enumeration` and will be removed in a future version of this API.
javax.servlet.ServletRequestWrapper.getRealPath(String) As of Version 3.0 of the Java Servlet API
javax.servlet.ServletRequest.getRealPath(String) As of Version 2.1 of the Java Servlet API, use `ServletContext.getRealPath(java.lang.String)` instead.
javax.servlet.UnavailableException.getServlet() As of Java Servlet API 2.2, with no replacement.

javax.servlet.ServletContext.getServlet(String)
As of Java Servlet API 2.1, with no direct replacement.

This method was originally defined to retrieve a servlet from a `ServletContext`. In this version, this method always returns `null` and remains only to preserve binary compatibility. This method will be permanently removed in a future version of the Java Servlet API.

In lieu of this method, servlets can share information using the `ServletContext` class and can perform shared business logic by invoking methods on common non-servlet classes.

javax.servlet.ServletContext.getServletNames()
As of Java Servlet API 2.1, with no replacement.

This method was originally defined to return an `Enumeration` of all the servlet names known to this context. In this version, this method always returns an empty `Enumeration` and remains only to preserve binary compatibility. This method will be permanently removed in a future version of the Java Servlet API.

javax.servlet.ServletContext.getServlets()
As of Java Servlet API 2.0, with no replacement.

This method was originally defined to return an `Enumeration` of all the servlets known to this servlet context. In this version, this method always returns an empty enumeration and remains only to preserve binary compatibility. This method will be permanently removed in a future version of the Java Servlet API.

javax.servlet.http.HttpSessionContext.getSession(String) As of Java Servlet API 2.1 with no replacement. This method must return null and will be removed in a future version of this API.
javax.servlet.http.HttpSession.getSessionContext() As of Version 2.1, this method is deprecated and has no replacement. It will be removed in a future version of the Java Servlet API.
javax.servlet.http.HttpSession.getValue(String) As of Version 2.2, this method is replaced by `HttpSession.getAttribute(java.lang.String)`.
javax.servlet.http.HttpSession.getValueNames() As of Version 2.2, this method is replaced by `HttpSession.getAttributeNames()`
javax.servlet.http.HttpServletRequestWrapper.isRequestedSessionIdFromUrl() As of Version 3.0 of the Java Servlet API
javax.servlet.http.HttpServletRequest.isRequestedSessionIdFromUrl() As of Version 2.1 of the Java Servlet API, use `HttpServletRequest.isRequestedSessionIdFromURL()` instead.
javax.servlet.ServletContext.log(Exception, String) As of Java Servlet API 2.1, use `ServletContext.log(String message, Throwable throwable)` instead. This method was originally defined to write an exception's stack trace and an explanatory error message to the servlet log file.
javax.servlet.http.HttpSession.putValue(String, Object) As of Version 2.2, this method is replaced by `HttpSession.setAttribute(java.lang.String, java.lang.Object)`
javax.servlet.http.HttpSession.removeValue(String) As of Version 2.2, this method is replaced by `HttpSession.removeAttribute(java.lang.String)`
javax.servlet.http.HttpServletResponseWrapper.setStatus(int, String) As of Version 3.0 of the Java Servlet API
javax.servlet.http.HttpServletResponse.setStatus(int, String) As of version 2.1, due to ambiguous meaning of the message parameter. To set a status code use `setStatus(int)`, to send an error with a description use `sendError(int, String)`.

Deprecated Constructors
Constructor and Description
javax.servlet.UnavailableException(int, Servlet, String) As of Java Servlet API 2.2, use `UnavailableException.UnavailableException(String, int)` instead.
javax.servlet.UnavailableException(Servlet, String) As of Java Servlet API 2.2, use `UnavailableException.UnavailableException(String)` instead.