{"id":60543,"date":"2025-08-11T03:28:08","date_gmt":"2025-08-11T03:28:08","guid":{"rendered":"https:\/\/www.newsbeep.com\/ca\/60543\/"},"modified":"2025-08-11T03:28:08","modified_gmt":"2025-08-11T03:28:08","slug":"java-news-roundup-jdk-25-rc1-spring-ai-wildfly-37-payara-platform-langchain4j-grails","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/ca\/60543\/","title":{"rendered":"Java News Roundup: JDK 25-RC1, Spring AI, WildFly 37, Payara Platform, LangChain4j, Grails"},"content":{"rendered":"<p>This week&#8217;s Java roundup for August 4th, 2025, features news highlighting: the first release candidate of JDK 25 and Grails 7.0; the release of WildFly 37; the August edition of the Payara Platform; point releases of LangChain4j, JBang and Hibernate projects; and maintenance releases of Spring AI, JobRunr and Apache Tomcat.<\/p>\n<p>JDK 25<\/p>\n<p><a href=\"https:\/\/github.com\/openjdk\/jdk\/releases\/tag\/jdk-25%2B35\" rel=\"nofollow noopener\" target=\"_blank\">Build 35<\/a> of the JDK 25 <a href=\"https:\/\/jdk.java.net\/25\/\" 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-25%2B34...jdk-25%2B35\" rel=\"nofollow noopener\" target=\"_blank\">updates<\/a> from Build 34 that include fixes for various <a href=\"https:\/\/bugs.openjdk.org\/issues\/?jql=project%20%3D%20JDK%20AND%20fixversion%20%3D%2025%20and%20%22resolved%20in%20build%22%20%3D%20b35%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\/25\/release-notes\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>As per the JDK 25 <a href=\"https:\/\/openjdk.org\/projects\/jdk\/25\/#Schedule\" rel=\"nofollow noopener\" target=\"_blank\">release schedule<\/a>, <a href=\"https:\/\/www.linkedin.com\/in\/markreinhold\" rel=\"nofollow noopener\" target=\"_blank\">Mark Reinhold<\/a>, chief architect, Java Platform Group at Oracle, formally <a href=\"https:\/\/mail.openjdk.org\/pipermail\/jdk-dev\/2025-August\/010295.html\" rel=\"nofollow noopener\" target=\"_blank\">declared<\/a> that JDK 25 has entered its first <a href=\"https:\/\/openjdk.java.net\/jeps\/3#rc\" rel=\"nofollow noopener\" target=\"_blank\">release candidate<\/a> as there are no unresolved P1 bugs in Build 35. The anticipated GA release is scheduled for September 16, 2025, and will include a final set of 18 features.<\/p>\n<p>JDK 26<\/p>\n<p><a href=\"https:\/\/github.com\/openjdk\/jdk\/releases\/tag\/jdk-26%2B10\" rel=\"nofollow noopener\" target=\"_blank\">Build 10<\/a> of the JDK 26 <a href=\"https:\/\/jdk.java.net\/26\/\" 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-26%2B9...jdk-26%2B10\" rel=\"nofollow noopener\" target=\"_blank\">updates<\/a> from Build 9 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%20b10%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>Spring Framework<\/p>\n<p>The <a href=\"https:\/\/spring.io\/blog\/2025\/08\/08\/spring-ai-1\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/spring.io\/projects\/spring-ai\" rel=\"nofollow noopener\" target=\"_blank\">Spring AI<\/a> 1.0.1 delivers bug fixes, improvements in documentation, dependency upgrades and new features such as: custom templates added to the <a href=\"https:\/\/docs.spring.io\/spring-ai\/docs\/1.0.1\/api\/org\/springframework\/ai\/model\/transformer\/KeywordMetadataEnricher.html\" rel=\"nofollow noopener\" target=\"_blank\">KeywordMetadataEnricher<\/a> class for improved flexibility with metadata; an improved <a href=\"https:\/\/docs.spring.io\/spring-ai\/docs\/1.0.1\/api\/org\/springframework\/ai\/ollama\/OllamaChatModel.html\" rel=\"nofollow noopener\" target=\"_blank\">OllamaChatModel<\/a> class that adds integration with the retry template; and improvements to the <a href=\"https:\/\/docs.spring.io\/spring-ai\/docs\/1.0.1\/api\/org\/springframework\/ai\/tool\/annotation\/Tool.html\" rel=\"nofollow noopener\" target=\"_blank\">@Tool<\/a> annotation for enhanced function calling capabilities. Further details on this release may be found in the <a href=\"https:\/\/github.com\/spring-projects\/spring-ai\/releases\/tag\/v1.0.1\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>WildFly<\/p>\n<p>The <a href=\"https:\/\/www.wildfly.org\/news\/2025\/08\/04\/WildFly-37-is-released\/\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/www.wildfly.org\/\" rel=\"nofollow noopener\" target=\"_blank\">WildFly<\/a> 37 primarily focused on bug fixes, cleaning up technical debt and the <a href=\"https:\/\/www.wildfly.org\/news\/2025\/04\/30\/WildFly-joins-Commonhaus\/\" rel=\"nofollow noopener\" target=\"_blank\">transition<\/a> of WildFly to the <a href=\"https:\/\/www.commonhaus.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Commonhaus Foundation<\/a>. Other notable changes include: many dependency upgrades; and a new commit-level attribute for moving <a href=\"https:\/\/activemq.apache.org\/components\/artemis\/\" rel=\"nofollow noopener\" target=\"_blank\">ActiveMQ Artemis<\/a> messages from the server during scaledown that defines a more reasonable transaction size to avoid an OutOfMemoryError exception. More details on this release may be found in the <a href=\"https:\/\/github.com\/wildfly\/wildfly\/releases\/tag\/37.0.0.Final\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Payara<\/p>\n<p>Payara has <a href=\"https:\/\/blog.payara.fish\/whats-new-in-the-payara-platform-august-2025-release\" rel=\"nofollow noopener\" target=\"_blank\">released<\/a> their August 2025 edition of the <a href=\"https:\/\/www.payara.fish\/\" rel=\"nofollow noopener\" target=\"_blank\">Payara Platform<\/a> that includes Community Edition 6.2025.8, Enterprise Edition 6.29.0, Enterprise Edition 5.78.0 and Payara 7.2025.1.Alpha4. All four editions deliver a critical security fix related to <a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-22871\" rel=\"nofollow noopener\" target=\"_blank\">CVE-2025-22871<\/a>, a <a href=\"https:\/\/portswigger.net\/research\/request-smuggling\" rel=\"nofollow noopener\" target=\"_blank\">request smuggling<\/a> vulnerability in <a href=\"https:\/\/www.grizzly.ai\/\" rel=\"nofollow noopener\" target=\"_blank\">Grizzly<\/a> that allows attackers to bypass security controls or poison web caches due to improper handling of chunked transfer coding.<\/p>\n<p>Other notable fixes include: a NullPointerException when using database transactions with entity listener components that inject CDI beans in processes annotated with Jakarta Enterprise Beans&#8217; <a href=\"https:\/\/jakarta.ee\/specifications\/enterprise-beans\/4.0\/apidocs\/jakarta\/ejb\/asynchronous\" rel=\"nofollow noopener\" target=\"_blank\">@Asynchronous<\/a>; and an issue in the admin interface where existing security realms only displayed their names without showing their configured properties.<\/p>\n<p>Further details on these releases may be found in the release notes for <a href=\"https:\/\/docs.payara.fish\/community\/docs\/6.2025.8\/Release%20Notes\/Release%20Notes%206.2025.8.html\" rel=\"nofollow noopener\" target=\"_blank\">Community Edition 6.2025.8<\/a> and <a href=\"https:\/\/docs.payara.fish\/enterprise\/docs\/Release%20Notes\/Release%20Notes%206.29.0.html\" rel=\"nofollow noopener\" target=\"_blank\">Enterprise Edition 6.29.0<\/a> and <a href=\"https:\/\/docs.payara.fish\/enterprise\/docs\/5.78.0\/Release%20Notes\/Release%20Notes%205.78.0.html\" rel=\"nofollow noopener\" target=\"_blank\">Enterprise Edition 5.78.0<\/a>.<\/p>\n<p>Hibernate<\/p>\n<p>The <a href=\"https:\/\/in.relation.to\/2025\/08\/07\/orm-71\/\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/hibernate.org\/orm\/\" rel=\"nofollow noopener\" target=\"_blank\">Hibernate ORM<\/a> 7.1.0.Final delivers new features such as: a new <a href=\"https:\/\/docs.jboss.org\/hibernate\/orm\/7.1\/javadocs\/org\/hibernate\/Locking.html\" rel=\"nofollow noopener\" target=\"_blank\">Locking<\/a> interface, consisting of the <a href=\"https:\/\/docs.jboss.org\/hibernate\/orm\/7.1\/javadocs\/org\/hibernate\/Locking.Scope.html\" rel=\"nofollow noopener\" target=\"_blank\">Locking.Scope<\/a> and <a href=\"https:\/\/docs.jboss.org\/hibernate\/orm\/7.1\/javadocs\/org\/hibernate\/Locking.FollowOn.html\" rel=\"nofollow noopener\" target=\"_blank\">Locking.FollowOn<\/a> enum classes, that extend the Jakarta Persistence <a href=\"https:\/\/jakarta.ee\/specifications\/persistence\/3.2\/apidocs\/jakarta.persistence\/jakarta\/persistence\/pessimisticlockscope\" rel=\"nofollow noopener\" target=\"_blank\">PessimisticLockScope<\/a> enum class to support various aspects of pessimistic locking; a new <a href=\"https:\/\/docs.jboss.org\/hibernate\/orm\/7.1\/javadocs\/org\/hibernate\/Timeouts.html\" rel=\"nofollow noopener\" target=\"_blank\">Timeouts<\/a> interface that serves as a helper to the Jakarta Persistence <a href=\"https:\/\/jakarta.ee\/specifications\/persistence\/3.2\/apidocs\/jakarta.persistence\/jakarta\/persistence\/timeout\" rel=\"nofollow noopener\" target=\"_blank\">Timeout<\/a> class; and support for resource discovery in Java SE environments to complement the same in Jakarta EE environments. More details on this release may be found in the <a href=\"https:\/\/docs.jboss.org\/hibernate\/orm\/7.1\/whats-new\/whats-new.html\" rel=\"nofollow noopener\" target=\"_blank\">what&#8217;s new<\/a> page.<\/p>\n<p><a href=\"https:\/\/hibernate.org\/reactive\/\" rel=\"nofollow noopener\" target=\"_blank\">Hibernate Reactive<\/a> 3.1.0.Final features compatibility with Hibernate ORM 7.1.0.Final and an upgrade to <a href=\"https:\/\/github.com\/FasterXML\/jackson-databind\/blob\/2.x\/README.md\" rel=\"nofollow noopener\" target=\"_blank\">Jackson Databind<\/a> 2.19.2. Further details on this release may be found in the <a href=\"https:\/\/github.com\/hibernate\/hibernate-reactive\/releases\/tag\/3.1.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>The <a href=\"https:\/\/in.relation.to\/2025\/08\/08\/hibernate-search-8-1-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.1.0.Final features: compatibility with Hibernate ORM 7.1.0.Final; upgrades to versions 9.1 and 8.19 of <a href=\"https:\/\/www.elastic.co\/\" rel=\"nofollow noopener\" target=\"_blank\">Elasticsearch<\/a>; and the ability to request terms and <a href=\"https:\/\/docs.jboss.org\/hibernate\/search\/8.1\/reference\/en-US\/html_single\/#search-dsl-aggregation-range-value\" rel=\"nofollow noopener\" target=\"_blank\">range aggregations<\/a> for more than just counts. More details on this release may be found in the <a href=\"https:\/\/hibernate.atlassian.net\/issues\/?jql=project%3D10061%20AND%20fixVersion%3D34827\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>LangChain4j<\/p>\n<p>The formal release (along with the ninth beta release) of <a href=\"https:\/\/docs.langchain4j.dev\/\" rel=\"nofollow noopener\" target=\"_blank\">LangChain4j<\/a> 1.3.0 delivers: two new experimental modules, langchain4j-agentic and langchain4j-agentic-a2a, that offer a set of abstractions and utilities for building agentic, AI-infused applications; and use of the withFloatVectors() method that replaces the deprecated withVectors() method defined in the Milvus <a href=\"https:\/\/github.com\/milvus-io\/milvus-sdk-java\/blob\/master\/sdk-core\/src\/main\/java\/io\/milvus\/param\/dml\/SearchParam.java\" rel=\"nofollow noopener\" target=\"_blank\">SearchParam<\/a> class. Further details on this release may be found in the <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/releases\/tag\/1.3.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>JobRunr<\/p>\n<p><a href=\"https:\/\/www.jobrunr.io\/en\/\" rel=\"nofollow noopener\" target=\"_blank\">JobRunr<\/a> 8.0.2, the second maintenance release, provides bug fixes and notable changes such as: moving the poll interval in scheduling carbon-aware jobs to its own configuration resulting in fewer database calls; and improved logging that eliminates missing or inconsistent names and IDs related to the JobRunr lifecycle. More details on this release may be found in the <a href=\"https:\/\/github.com\/jobrunr\/jobrunr\/releases\/tag\/v8.0.2\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a> and more information on the recent release of JobRunr 8.0 may be found in this InfoQ <a href=\"https:\/\/www.infoq.com\/news\/2025\/08\/jobrunr-8-carbon-aware\/\" rel=\"nofollow noopener\" target=\"_blank\">news story<\/a><\/p>\n<p>JBang<\/p>\n<p>The release of <a href=\"https:\/\/www.jbang.dev\/\" rel=\"nofollow noopener\" target=\"_blank\">JBang<\/a> 0.129.0 delivers these notable changes: improved startup time by lazily loading the <a href=\"https:\/\/picocli.info\/\" rel=\"nofollow noopener\" target=\"_blank\">PicoCli<\/a> help information during scanning of the PATH environment variable for plugins; and the inner classes defined in the <a href=\"https:\/\/github.com\/jbangdev\/jbang\/blob\/main\/src\/main\/java\/dev\/jbang\/cli\/App.java\" rel=\"nofollow noopener\" target=\"_blank\">App<\/a> class, namely: AppList, AppUninstall and AppSetup, now extend the <a href=\"https:\/\/github.com\/jbangdev\/jbang\/blob\/main\/src\/main\/java\/dev\/jbang\/cli\/BaseCommand.java\" rel=\"nofollow noopener\" target=\"_blank\">BaseCommand<\/a> class to expose the &#8211;help command line option. Further details on this release may be found in the <a href=\"https:\/\/github.com\/jbangdev\/jbang\/releases\/tag\/v0.129.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Apache Software Foundation<\/p>\n<p>Versions 11.0.10, 10.1.44 and 9.0.108 of <a href=\"https:\/\/tomcat.apache.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Apache Tomcat<\/a> (announced <a href=\"https:\/\/www.mail-archive.com\/announce@apache.org\/msg10266.html\" rel=\"nofollow noopener\" target=\"_blank\">here<\/a>, <a href=\"https:\/\/www.mail-archive.com\/announce@apache.org\/msg10270.html\" rel=\"nofollow noopener\" target=\"_blank\">here<\/a> and <a href=\"https:\/\/www.mail-archive.com\/announce@apache.org\/msg10265.html\" rel=\"nofollow noopener\" target=\"_blank\">here<\/a>, respectively) ship with notable changes such as: a resolution to issues populating the bloom filter, via the <a href=\"https:\/\/tomcat.apache.org\/tomcat-11.0-doc\/api\/org\/apache\/catalina\/webresources\/JarContents.html\" rel=\"nofollow noopener\" target=\"_blank\">JarContents<\/a> class, used for achieve indexing with a packed WAR file containing one or more JAR files; and a new dispatchEndRequest() method, added to the <a href=\"https:\/\/tomcat.apache.org\/tomcat-11.0-doc\/api\/org\/apache\/coyote\/AbstractProcessor.html\" rel=\"nofollow noopener\" target=\"_blank\">AbstractProcessor<\/a> class, to set the keepAliveTimeout property in the server.xml file when using HTTP\/1.1 following an asynchronous server request. More details on these releases may be found in the release notes for <a href=\"https:\/\/tomcat.apache.org\/tomcat-11.0-doc\/changelog.html\" rel=\"nofollow noopener\" target=\"_blank\">version 11.0.10<\/a>, <a href=\"https:\/\/tomcat.apache.org\/tomcat-10.1-doc\/changelog.html\" rel=\"nofollow noopener\" target=\"_blank\">version 10.1.44<\/a> and <a href=\"https:\/\/tomcat.apache.org\/tomcat-9.0-doc\/changelog.html\" rel=\"nofollow noopener\" target=\"_blank\">version 9.0.108<\/a>.<\/p>\n<p>Grails<\/p>\n<p>The first release candidate of <a href=\"https:\/\/grails.apache.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Grails<\/a> 7.0.0 delivers bug fixes, dependency upgrades and notable changes such as: an enhanced <a href=\"https:\/\/github.com\/apache\/grails-core\/blob\/7.0.x\/grails-gradle\/docs-core\/src\/main\/groovy\/grails\/doc\/dropdown\/CreateReleaseDropDownTask.groovy\" rel=\"nofollow noopener\" target=\"_blank\">CreateReleaseDropDownTask<\/a> class such that it can be reused by the <a href=\"https:\/\/github.com\/apache\/grails-spring-security\/blob\/7.0.x\/README.md\" rel=\"nofollow noopener\" target=\"_blank\">Grails Spring Security<\/a> plugin; and a new optional Spring Boot virtual threads feature added to <a href=\"https:\/\/start.grails.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Grails Forge<\/a>. Further details on this release may be found in the <a href=\"https:\/\/github.com\/apache\/grails-core\/releases\/tag\/v7.0.0-RC1\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"This week&#8217;s Java roundup for August 4th, 2025, features news highlighting: the first release candidate of JDK 25&hellip;\n","protected":false},"author":2,"featured_media":60544,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[39660,11777,49,48,4113,39658,39649,39655,39651,35858,39648,39659,39656,39652,39657,39654,39653,39650,61],"class_list":["post-60543","post","type-post","status-publish","format-standard","has-post-thumbnail","category-technology","tag-apache-tomcat","tag-architecture-design","tag-ca","tag-canada","tag-development","tag-grails","tag-hibernate-orm","tag-hibernate-reactive","tag-hibernate-search","tag-java","tag-java-news-roundup-aug04-2025","tag-jbang","tag-jboss-wildfly","tag-jdk-25","tag-jdk-26","tag-langchain","tag-payara-platform","tag-spring-ai","tag-technology"],"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts\/60543","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/comments?post=60543"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts\/60543\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/media\/60544"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/media?parent=60543"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/categories?post=60543"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/tags?post=60543"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}