JEP draft: Deprecate the Applet API for Removal
Owner | Andy Herrick |
Type | Feature |
Scope | SE |
Status | Submitted |
Release | tbd |
Component | client-libs / java.awt |
Effort | S |
Duration | S |
Relates to | JEP 289: Deprecate the Applet API |
Reviewed by | Alexander Matveev, Kevin Rushforth, Philip Race, Sergey Bylokhov |
Created | 2020/11/10 15:54 |
Updated | 2021/03/03 22:55 |
Issue | 8256145 |
Summary
Deprecate the Applet API for removal. It is essentially irrelevant since all web-browser vendors have either removed support for Java browser plug-ins or announced plans to do so.
Description
Deprecate, for removal, these classes and interfaces of the standard Java API:
- java.applet.Applet
- java.applet.AppletStub
- java.applet.AppletContext
- java.applet.AudioClip
- javax.swing.JApplet
- java.beans.AppletInitializer
Deprecate, for removal, any API elements that reference the above classes and interfaces, including methods and fields in:
- java.beans.Beans
- javax.swing.RepaintManager
- javax.naming.Context
The Applet API was previously deprecated, though not for removal, by JEP 289 in Java 9.
Testing
Hundreds of tests need to be either modified or removed before the Applet API is removed, but this JEP is solely about deprecation-for-removal. We will review these tests to determine if further @SuppressWarnings
annotations are required.
Risks and Assumptions
In case remaining uses of these APIs do exist, developers can suppress compiler warnings via the @SuppressWarnings("removal")
annotation or the -Xlint:-removal
command-line option of the javac
compiler.
Dependencies
The Applet API was previously deprecated, though not for removal, by JEP 289 in Java 9.