
Notable bug fixes include: deployment-time recursive bytecode preprocessing in the WebappClassLoader class the JMX server accepting an arbitrary object as credentials and a validation error upon deploying an application to a cluster. GlassFish 7.0.5, the fifth maintenance release, delivers a new feature that asynchronously updates the instance status in the Admin Console. Further details on this build may be found in the release notes.įor JDK 21, developers are encouraged to report bugs via the Java Bug Database. JDK 21īuild 25 of the JDK 21 early-access builds was also made available this past week featuring updates from Build 24 that include fixes to various issues.

The review is expected to conclude on June 6, 2023. This is preferred to thread-local variables, especially when using large numbers of virtual threads. This JEP proposes to enable sharing of immutable data within and across threads. Formerly known as Extent-Local Variables (Incubator), this JEP is now a preview feature following JEP 429, Scoped Values (Incubator), delivered in JDK 20.

JEP 446, Scoped Values (Preview), has been promoted from Candidate to Proposed to Target for JDK 21.

The only significant change features the fork() method, defined in the StructuredTaskScope class, returns an instance of TaskHandle rather than a Future since the get() method in the TaskHandle interface was restructured to behave the same as the resultNow() method in the Future interface. Formerly a incubating API, this initial preview incorporates enhancements in response to feedback from the previous two rounds of incubation: JEP 428, Structured Concurrency (Incubator), delivered in JDK 19 and JEP 437, Structured Concurrency (Second Incubator), delivered in JDK 20. JEP 453, Structured Concurrency (Preview), has been promoted from Candidate to Proposed to Target for JDK 21. Goals of this JEP include: reassess the balance between serviceability and integrity and ensure that a majority of tools, which do not need to dynamically load agents, are unaffected. Originally known as Disallow the Dynamic Loading of Agents by Default, and following the approach of JEP Draft 8305968, Integrity and Strong Encapsulation, this JEP has evolved from its original intent to disallow the dynamic loading of agents into a running JVM by default to issue warnings when agents are dynamically loaded into a running JVM. JEP 451, Prepare to Disallow the Dynamic Loading of Agents, has been promoted from Proposed to Target to Targeted for JDK 21. InfoQ will follow up with a more detailed news story. This JEP was recently updated to include a major change that eliminates the DerivedKeyParameterSpec class in favor of placing fields in the argument list of the encapsulate(int from, int to, String algorithm) method. This feature JEP type proposes to: satisfy implementations of standard Key Encapsulation Mechanism (KEM) algorithms satisfy use cases of KEM by higher level security protocols and allow service providers to plug-in Java or native implementations of KEM algorithms. JEP 452, Key Encapsulation Mechanism API, has been promoted from Proposed to Target to Targeted for JDK 21. This week's Java roundup for May 29th, 2023, features news from OpenJDK, JDK 21, GlassFish 7.0.5, Payara, Open Liberty 23.0.0.5, IBM Semeru Runtimes, Micronaut 4.0-M6, Quarkus 3.1, Hibernate ORM 6.2.4, Hibernate Reactive 2.0, Hibernate Search 6.2.Beta1, Camel Quarkus 3.0-M2, Camel 3.14.8, Tomcat Native 2.0.4 and 1.2.37, Ktor 2.3.1, Multik 0.2.2, JobRunr 6.2.1, JDKMon 17.0.63 and Gradle 8.2-RC1.
