Plugin Schnittstelle in Java 24+ kaputt
Verfasst: Di Apr 28, 2026 10:10 am
Moin zusammen,
mit Java 24 ist der Java Security Manager Geschichte (siehe https://docs.oracle.com/en/java/javase/ ... abled.html).
Dies hat zur Folge, das js.java.isolate.sim.sim.plugin.pluginServ.mayCreateInstance immer false zurückgibt (man bekommt nämlich eine AccessControlException "checking permissions is not supported").
Folglich ist die Nutzung der Plugin Schnittstelle in Java 24 und höher nicht mehr möglich.
Dies wird leider nicht mal korrekt in der Konsolenausgabe protokolliert, da js.java.schaltungen.verifyTests.v_plugin eine abweichende Logik zum Testen der Schnittstelle/Permissions verwendet (die funktioniert weiterhin).
Ich möchte daher anregen:
1. Den Test in js.java.isolate.sim.sim.plugin.pluginServ.mayCreateInstance und js.java.schaltungen.verifyTests.v_plugin zu vereinheitlichen oder einen der beiden (tendenziell den ersten) zu entfernen.
2. Falls weiterhin AccessController.checkPermission genutzt werden soll, davor eine Prüfung, ob java 24+ läuft (tendenziell über java.specification.version), durchzuführen, welche den Aufruf von AccessController.checkPermission überspringt.
Freundliche Grüße
Tobi
mit Java 24 ist der Java Security Manager Geschichte (siehe https://docs.oracle.com/en/java/javase/ ... abled.html).
Dies hat zur Folge, das js.java.isolate.sim.sim.plugin.pluginServ.mayCreateInstance immer false zurückgibt (man bekommt nämlich eine AccessControlException "checking permissions is not supported").
Folglich ist die Nutzung der Plugin Schnittstelle in Java 24 und höher nicht mehr möglich.
Dies wird leider nicht mal korrekt in der Konsolenausgabe protokolliert, da js.java.schaltungen.verifyTests.v_plugin eine abweichende Logik zum Testen der Schnittstelle/Permissions verwendet (die funktioniert weiterhin).
Ich möchte daher anregen:
1. Den Test in js.java.isolate.sim.sim.plugin.pluginServ.mayCreateInstance und js.java.schaltungen.verifyTests.v_plugin zu vereinheitlichen oder einen der beiden (tendenziell den ersten) zu entfernen.
2. Falls weiterhin AccessController.checkPermission genutzt werden soll, davor eine Prüfung, ob java 24+ läuft (tendenziell über java.specification.version), durchzuführen, welche den Aufruf von AccessController.checkPermission überspringt.
Freundliche Grüße
Tobi