Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8362628

Remove the jdk.jsobject module

XMLWordPrintable

    • Icon: CSR CSR
    • Resolution: Approved
    • Icon: P4 P4
    • 26
    • deploy
    • None
    • source, binary, behavioral
    • medium
    • Hide
      Applications that currently use the `jdk.jsobject` module and do not include it in the list of added modules from JavaFX will no longer run. Since `jdk.jsobject` is included in JavaFX 24 and later, it means that applications that need this module will not be able to run using JavaFX 23 or earlier on JDK 26. We expect this to be rare, since we recommend using JDK NN to run JavaFX NN applications.
      Show
      Applications that currently use the `jdk.jsobject` module and do not include it in the list of added modules from JavaFX will no longer run. Since `jdk.jsobject` is included in JavaFX 24 and later, it means that applications that need this module will not be able to run using JavaFX 23 or earlier on JDK 26. We expect this to be rare, since we recommend using JDK NN to run JavaFX NN applications.
    • Java API
    • JDK

      Summary

      Remove the jdk.jsobject module. This module is now included with JavaFX.

      Problem

      As noted in JDK-8338250, jdk.jsobject is a legacy JDK module that delivers a single package, netscape.javascript. It is not used by the JDK and is deprecated for removal as of JDK 24. It is only used by JavaFX WebView for Java <--> JavaScript interoperation. Prior to JDK 11, it was also used by the LiveConnect feature of Java Plug-In to allow applets to communicate with the hosting web page. JavaFX, which was unbundled from the JDK in 11, is the only remaining client of the jdk.jsobject APIs.

      Solution

      Remove the terminally deprecated jdk.jsobject module. This module is now delivered with JavaFX, as of JavaFX 24. Applications that need the jdk.jsobject module will use it along with the javafx.web module from the JavaFX distribution.

      Specification

      Remove the jdk.jsobject module, the netscape.javascript package, and all public types in that package. The list of removed types is as follows:

      Package netscape.javascript:

      JSException
      JSObject

      See the attached 8359760.patch file for the diffs.

            kcr Kevin Rushforth
            kcr Kevin Rushforth
            Alan Bateman, Roger Riggs
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: