{"id":363733,"date":"2025-12-22T03:30:07","date_gmt":"2025-12-22T03:30:07","guid":{"rendered":"https:\/\/www.newsbeep.com\/au\/363733\/"},"modified":"2025-12-22T03:30:07","modified_gmt":"2025-12-22T03:30:07","slug":"java-news-roundup-glassfish-tornadovm-spring-shell-wildfly-hibernate-kotlin","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/au\/363733\/","title":{"rendered":"Java News Roundup: GlassFish, TornadoVM, Spring Shell, WildFly, Hibernate, Kotlin"},"content":{"rendered":"<p>This week&#8217;s Java roundup for December 15th, 2025, features news highlighting: the fifteenth milestone release of GlassFish 8.0; the first release candidate of Spring Shell 4.0; point releases of TornadoVM, Hibernate Reactive, Hibernate Search and Kotlin; the first beta release of WildFly 39; and maintenance releases of Micronaut Helidon and Vert.x.<\/p>\n<p>JDK 26<\/p>\n<p><a href=\"https:\/\/github.com\/openjdk\/jdk\/releases\/tag\/jdk-26%2B29\" rel=\"nofollow noopener\" target=\"_blank\">Build 29<\/a> of the JDK 26 <a href=\"https:\/\/jdk.java.net\/26\/\" rel=\"nofollow noopener\" target=\"_blank\">early-access builds<\/a> was made available this past week featuring <a href=\"https:\/\/github.com\/openjdk\/jdk\/compare\/jdk-26%2B28...jdk-26%2B29\" rel=\"nofollow noopener\" target=\"_blank\">updates<\/a> from Build 28 that include fixes for various <a href=\"https:\/\/bugs.openjdk.org\/issues\/?jql=project%20%3D%20JDK%20AND%20fixversion%20%3D%2026%20and%20%22resolved%20in%20build%22%20%3D%20b29%20order%20by%20component%2C%20subcomponent\" rel=\"nofollow noopener\" target=\"_blank\">issues<\/a>. More details on this release may be found in the <a href=\"https:\/\/jdk.java.net\/26\/release-notes\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>JDK 27<\/p>\n<p><a href=\"https:\/\/github.com\/openjdk\/jdk\/releases\/tag\/jdk-27%2B3\" rel=\"nofollow noopener\" target=\"_blank\">Build 3<\/a> of the JDK 27 <a href=\"https:\/\/jdk.java.net\/27\/\" rel=\"nofollow noopener\" target=\"_blank\">early-access builds<\/a> was also made available this past week featuring <a href=\"https:\/\/github.com\/openjdk\/jdk\/compare\/jdk-27%2B2...jdk-27%2B3\" rel=\"nofollow noopener\" target=\"_blank\">updates<\/a> from Build 2 that include fixes for various <a href=\"https:\/\/bugs.openjdk.org\/issues\/?jql=project%20%3D%20JDK%20AND%20fixversion%20%3D%2027%20and%20%22resolved%20in%20build%22%20%3D%20b03%20order%20by%20component%2C%20subcomponent\" rel=\"nofollow noopener\" target=\"_blank\">issues<\/a>. Further details on this release may be found in the <a href=\"https:\/\/jdk.java.net\/27\/release-notes\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>For <a href=\"https:\/\/openjdk.org\/projects\/jdk\/26\/\" rel=\"nofollow noopener\" target=\"_blank\">JDK 26<\/a> and <a href=\"https:\/\/openjdk.org\/projects\/jdk\/27\/\" rel=\"nofollow noopener\" target=\"_blank\">JDK 27<\/a>, developers are encouraged to report bugs via the <a href=\"https:\/\/bugreport.java.com\/bugreport\/\" rel=\"nofollow noopener\" target=\"_blank\">Java Bug Database<\/a>.<\/p>\n<p>GlassFish<\/p>\n<p>The fifteenth milestone release of <a href=\"https:\/\/glassfish.org\/\" rel=\"nofollow noopener\" target=\"_blank\">GlassFish<\/a> 8.0.0 delivers bug fixes, dependency upgrades and new features such as: support for NoSQL entities in Jakarta Data; and ensure that the TCKs for all the supported MicroProfile specifications and the Jakarta MVC specification still pass their respective tests. <a href=\"https:\/\/omnifish.ee\/\" rel=\"nofollow noopener\" target=\"_blank\">OmniFish<\/a>, the team that leads maintenance of GlassFish, states that this milestone release &#8220;concludes all goals for the 8.0.0 release, and there is no outstanding work for 8.0.0 left&#8221; and &#8220;incorporates all changes from the 7.1.x branch.&#8221; More details on this release may be found in the <a href=\"https:\/\/github.com\/eclipse-ee4j\/glassfish\/releases\/tag\/8.0.0-M15\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>TornadoVM<\/p>\n<p>The release of <a href=\"https:\/\/www.tornadovm.org\/\" rel=\"nofollow noopener\" target=\"_blank\">TornadoVM<\/a> 2.2.0 features notable changes such as: cross-platform runtime compatibility checks added to the TornadoVM launcher scripts to detect common deployment issues; and the ability to explicitly pass CUDA JIT compiler flags using the NVIDIA <a href=\"https:\/\/docs.nvidia.com\/cuda\/cuda-driver-api\/group__CUDA__MODULE.html#group__CUDA__MODULE_1g9e8047e9dbf725f0cd7cafd18bfd4d12\" rel=\"nofollow noopener\" target=\"_blank\">cuModuleLoadDataEx()<\/a> method and the <a href=\"https:\/\/github.com\/beehive-lab\/TornadoVM\/blob\/master\/tornado-runtime\/src\/main\/java\/uk\/ac\/manchester\/tornado\/runtime\/common\/TornadoOptions.java\" rel=\"nofollow noopener\" target=\"_blank\">TornadoOptions<\/a> class. Further details on this release may be found in the <a href=\"https:\/\/github.com\/beehive-lab\/TornadoVM\/releases\/tag\/v2.2.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a> and this InfoQ <a href=\"https:\/\/www.infoq.com\/news\/2025\/12\/tornadovm-20-gpu-llm\/\" rel=\"nofollow noopener\" target=\"_blank\">news story<\/a> on the recent release of TornadoVM 2.0.<\/p>\n<p>The team has also <a href=\"https:\/\/www.tornadovm.org\/post\/getting-started-with-tornadovm-using-sdkman\" rel=\"nofollow noopener\" target=\"_blank\">announced<\/a> that developers can get started using TornadoVM via <a href=\"https:\/\/sdkman.io\/\" rel=\"nofollow noopener\" target=\"_blank\">SDKMAN<\/a>.<\/p>\n<p>Spring Framework<\/p>\n<p>The <a href=\"https:\/\/spring.io\/blog\/2025\/12\/19\/spring-shell-4-0-0-rc1-released\" rel=\"nofollow noopener\" target=\"_blank\">first release candidate<\/a> of <a href=\"https:\/\/github.com\/spring-projects\/spring-shell\/releases\/tag\/v4.0.0-RC1\" rel=\"nofollow noopener\" target=\"_blank\">Spring Shell<\/a> 4.0.0 ships with dependency upgrades and support for: print annotated method result to the standard output; command completion; custom completion providers; hidden commands; command option validation via the <a href=\"https:\/\/jakarta.ee\/specifications\/bean-validation\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Validation<\/a> specification; new exit status for unavailable commands; and command aliases and exception mapping. More details on this release may be found in the <a href=\"https:\/\/github.com\/spring-projects\/spring-shell\/releases\/tag\/v4.0.0-RC1\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Micronaut<\/p>\n<p>The Micronaut Foundation has <a href=\"https:\/\/micronaut.io\/2025\/12\/17\/micronaut-framework-4-10-5-released\/\" rel=\"nofollow noopener\" target=\"_blank\">released<\/a> version 4.10.5 of the <a href=\"https:\/\/micronaut.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Micronaut Framework<\/a>, based on <a href=\"https:\/\/github.com\/micronaut-projects\/micronaut-core\/releases\/tag\/v4.10.11\" rel=\"nofollow noopener\" target=\"_blank\">Micronaut Core 4.10.11<\/a>, features bug fixes and a patch update to the <a href=\"https:\/\/micronaut-projects.github.io\/micronaut-data\/latest\/guide\/\" rel=\"nofollow noopener\" target=\"_blank\">Micronaut Data<\/a> module. Further details on this release may be found in the <a href=\"https:\/\/github.com\/micronaut-projects\/micronaut-platform\/releases\/tag\/v4.10.5\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>WildFly<\/p>\n<p>The <a href=\"https:\/\/www.wildfly.org\/news\/2025\/12\/19\/New-WildFly-39-Beta-release\/\" rel=\"nofollow noopener\" target=\"_blank\">beta release<\/a> of <a href=\"https:\/\/www.wildfly.org\/\" rel=\"nofollow noopener\" target=\"_blank\">WildFly<\/a> 39 provides bug fixes, dependency upgrades and new features such as: support for TLS configuration for TCP-based transport protocols; the addition of idle time-based eviction configuration for distributable HTTP sessions, stateful session beans and timers; and implementations of the <a href=\"https:\/\/jakarta.ee\/specifications\/authentication\/3.1\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Authentication 3.1<\/a>, <a href=\"https:\/\/jakarta.ee\/specifications\/concurrency\/3.1\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Concurrency 3.1<\/a>, <a href=\"https:\/\/jakarta.ee\/specifications\/security\/4.0\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Security 4.0<\/a>, <a href=\"https:\/\/jakarta.ee\/specifications\/servlet\/6.1\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Servlet 6.1<\/a>, and <a href=\"https:\/\/jakarta.ee\/specifications\/websocket\/2.2\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta WebSocket 2.2<\/a> specifications. More details on this release may be found in the <a href=\"https:\/\/github.com\/wildfly\/wildfly\/releases\/tag\/39.0.0.Beta1\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Helidon<\/p>\n<p>The release of <a href=\"https:\/\/helidon.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Helidon<\/a> 4.3.3 features notable changes such as: a more efficient creation of Prometheus output especially with a large number of registered metrics; and a monitor thread, created by an implementation of the <a href=\"https:\/\/helidon.io\/docs\/v4\/apidocs\/io.helidon.faulttolerance\/io\/helidon\/faulttolerance\/Timeout.html\" rel=\"nofollow noopener\" target=\"_blank\">Timeout<\/a> interface, will now be terminated when the supplier returns to avoid wasting memory with multiple threads in the TIMED_WAITING state. Further details on this release may be found in the <a href=\"https:\/\/github.com\/helidon-io\/helidon\/blob\/4.3.3\/CHANGELOG.md\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Hibernate<\/p>\n<p>The release of <a href=\"https:\/\/hibernate.org\/reactive\/\" rel=\"nofollow noopener\" target=\"_blank\">Hibernate Reactive<\/a> 4.2.0.Final features: alignment with Hibernate ORM 7.2.0.Final; a refactoring of the <a href=\"https:\/\/github.com\/DavideD\/hibernate-reactive\/blob\/main\/hibernate-reactive-core\/src\/main\/java\/org\/hibernate\/reactive\/mutiny\/impl\/MutinySessionImpl.java\" rel=\"nofollow noopener\" target=\"_blank\">MutinySessionImpl<\/a> class to roll back a live transaction when closing the connection; and a replacement of the deprecated GitHub Action command, ::set-output, in the workflows with the preferred $GITHUB_OUTPUT environmental variable. More details on this release may be found in the <a href=\"https:\/\/github.com\/hibernate\/hibernate-reactive\/releases\/tag\/4.2.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>The <a href=\"https:\/\/in.relation.to\/2025\/12\/15\/hibernate-search-8-2-0-Final\/\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/hibernate.org\/search\/\" rel=\"nofollow noopener\" target=\"_blank\">Hibernate Search<\/a> 8.2.0.Final delivers bug fixes, dependency upgrades and new features such as: compatibility with the <a href=\"https:\/\/hibernate.org\/orm\/\" rel=\"nofollow noopener\" target=\"_blank\">Hibernate ORM<\/a> 7.2.0.Final release train; and a pluggable REST client for the Elasticsearch backend making it possible to switch to a different REST client as needed. Further details on this release may be found in the <a href=\"https:\/\/github.com\/hibernate\/hibernate-search\/releases\/tag\/8.2.0.Final\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Eclipse Vert.x<\/p>\n<p>Versions 5.0.6 and 4.5.23 of <a href=\"https:\/\/vertx.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Eclipse Vert.x<\/a> (announced <a href=\"https:\/\/vertx.io\/blog\/eclipse-vert-x-5-0-6\/\" rel=\"nofollow noopener\" target=\"_blank\">here<\/a> and <a href=\"https:\/\/vertx.io\/blog\/eclipse-vert-x-4-5-23\/\" rel=\"nofollow noopener\" target=\"_blank\">here<\/a>, respectively), primarily addresses <a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-67735\" rel=\"nofollow noopener\" target=\"_blank\">CVE-2025-67735<\/a>, a vulnerability affecting <a href=\"https:\/\/netty.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Netty<\/a> versions prior to 4.1.129.Final and 4.2.8.Final, where an attacker may abuse an instance of the <a href=\"https:\/\/github.com\/netty\/netty\/blob\/4.2\/codec-http\/src\/main\/java\/io\/netty\/handler\/codec\/http\/HttpRequestEncoder.java\" rel=\"nofollow noopener\" target=\"_blank\">HttpRequestEncoder<\/a> class to perform request smuggling using CRLF injection. More details on these releases may be found in the release notes for <a href=\"https:\/\/github.com\/vert-x3\/wiki\/wiki\/5.0.6-Release-Notes\" rel=\"nofollow noopener\" target=\"_blank\">version 5.0.6<\/a> and <a href=\"https:\/\/github.com\/vert-x3\/wiki\/wiki\/4.5.23-Release-Notes\" rel=\"nofollow noopener\" target=\"_blank\">version 4.5.23<\/a>.<\/p>\n<p>Kotlin<\/p>\n<p>The <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2025\/12\/kotlin-2-3-0-released\/\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/kotlinlang.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Kotlin<\/a> 2.3.0 features: support for JDK 25; fully-qualified names and new exception handling are now enabled by default in <a href=\"https:\/\/kotlinlang.org\/docs\/wasm-overview.html\" rel=\"nofollow noopener\" target=\"_blank\">Kotlin\/Wasm<\/a>; experimental support for exporting suspend functions to JavaScript and its <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/BigInt64Array\" rel=\"nofollow noopener\" target=\"_blank\">BigInt64Array<\/a> type to represent the <a href=\"https:\/\/kotlinlang.org\/api\/core\/kotlin-stdlib\/kotlin\/-long-array\/\" rel=\"nofollow noopener\" target=\"_blank\">LongArray<\/a> type in <a href=\"https:\/\/kotlinlang.org\/docs\/js-overview.html\" rel=\"nofollow noopener\" target=\"_blank\">Kotlin\/JavaScript<\/a>; and compatibility with Gradle 9.0. Further details on this release may be found in the <a href=\"https:\/\/github.com\/JetBrains\/kotlin\/releases\/tag\/v2.3.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a> and this <a href=\"https:\/\/kotlinlang.org\/docs\/whatsnew23.html\" rel=\"nofollow noopener\" target=\"_blank\">what&#8217;s new<\/a> page.<\/p>\n","protected":false},"excerpt":{"rendered":"This week&#8217;s Java roundup for December 15th, 2025, features news highlighting: the fifteenth milestone release of GlassFish 8.0;&hellip;\n","protected":false},"author":2,"featured_media":363734,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[19937,64,63,16553,197870,197873,197876,197867,43241,197866,197869,197868,197875,192572,197872,197871,105,193950,197874],"class_list":{"0":"post-363733","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-technology","8":"tag-architecture-design","9":"tag-au","10":"tag-australia","11":"tag-development","12":"tag-glassfish","13":"tag-helidon","14":"tag-hibernate-reactive","15":"tag-hibernate-search","16":"tag-java","17":"tag-java-news-roundup-dec15-2025","18":"tag-jboss-wildfly","19":"tag-jdk-26","20":"tag-jdk-27","21":"tag-kotlin","22":"tag-micronaut","23":"tag-spring-framework","24":"tag-technology","25":"tag-tornadovm","26":"tag-vert-x"},"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/posts\/363733","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/comments?post=363733"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/posts\/363733\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/media\/363734"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/media?parent=363733"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/categories?post=363733"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/au\/wp-json\/wp\/v2\/tags?post=363733"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}