JEP draft: Deprecate Applet APIs forRemoval

OwnerAndy Herrick
TypeFeature
ScopeSE
StatusSubmitted
Releasetbd
Componentclient-libs / java.awt
EffortS
DurationS
Relates toJEP 289: Deprecate the Applet API
Reviewed byAlexander Matveev, Kevin Rushforth, Philip Race, Sergey Bylokhov
Created2020/11/10 15:54
Updated2020/11/13 23:40
Issue8256145

Summary

The Applet APIs were deprecated in JDK 9 (JEP 289 : https://openjdk.java.net/jeps/289)

We now intend to deprecate these APIs for removal in a future release.

Goals

Motivation

The Applet API was primarily used for embedding java applets in a browser window. All browser vendors have either already removed plug-in support or else announced timelines for such removal.

Description

The following public Java SE API classes will be deprecated for removal:

Public fields, methods, and sub-classes which reference Applets in the following classes and interfaces will also have their existing deprecation annotation modified to include "forRemoval=true":

Classes that currently use any of the above deprecated methods or classes will have their SuppressWarnings annotation modified to include "removal".

Testing

This JEP does not add any new testing requirements.

There are hundreds of tests that need to be either modified or removed before the Applet API is removed, but this JEP is solely about deprecation. We need to examine these tests to determine if any further SuppressWarnings annotations are required.

Risks and Assumption

Impact

The impact of this deprecation may be minimal, but existing Java products use the Applet API, and we need to determine the impact of its removal before we commit to the removal.