BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Java News Roundup: Micronaut 4.0, Payara Platform, Spring Web Flow 3.0, JetBrains AI Assistant

Java News Roundup: Micronaut 4.0, Payara Platform, Spring Web Flow 3.0, JetBrains AI Assistant

This week's Java roundup for July 10th, 2023, features news from JDK 22, JDK 21, Spring Web Flow 3.0, Micronaut 4.0, Payara Platform, point and milestone releases of: Spring projects, Open Liberty, Helidon, Hibernate Reactive, Tomcat, Micrometer Metrics and Tracing, Piranha, Project Reactor, JHipster, JHipster Lite, Yupiik Fusion, Maven and Gradle; and AI Assistant in JetBrains IDEs.

JDK 21

Build 31 of the JDK 21 early-access builds was also made available this past week, featuring updates from Build 30 that include fixes to various issues. Further details on this build may be found in the release notes.

JDK 22

Build 6 of the JDK 22 early-access builds was also made available this past week featuring updates from Build 5 that include fixes to various issues. More details on this build may be found in the release notes.

For JDK 22 and JDK 21, developers are encouraged to report bugs via the Java Bug Database.

Spring Framework

The release of Spring Web Flow 3.0.0 features: compatibility with Spring Framework 6 and Jakarta EE; and the removal of Apache Tiles, a project which has been retired and, therefore, has not migrated to Jakarta EE. The Spring Web Flow Samples have been updated accordingly and the booking-mvc example now uses Thymeleaf Layouts instead of Apache Tiles.

The second milestone release of Spring Framework 6.1 ships with bug fixes, improvements in documentation, dependency upgrades and numerous new features such as: an HTTP interface client infrastructure and adapter for the RestTemplate class; a new RestClient interface; and support for multiple instances of the TaskScheduler interface with the @Scheduled annotation. Further details on this release may be found in the release notes.

Versions 6.0.11, 5.3.29 and 5.2.25.RELEASE of Spring Framework have been released featuring bug fixes, improvements in documentation, dependency upgrades and new features such as: a simplification of the isDepedendent() method defined in the DefaultSingletonBeanRegistry class; add the missing @Nullable annotations in the ContentDisposition.Builder interface; and an extension of supported types in the nullSafeConciseToString() method defined in the ObjectUtils method. Versions 6.0.11 and 5.3.29 will be consumed in the upcoming releases of Spring Boot 3.1.2 and 2.7.14, respectively. Considered an out-of-cycle release, version 5.2.25.RELEASE will not ship with a Spring Boot version as Spring Boot 2.3.x has reached end-of-life. More details on these releases may be found in the release notes for version 6.0.11, version 5.3.29 and version 5.2.25.RELEASE.

The first milestone release of Spring Data 2023.1.0, codenamed Vaughn, delivers: compatibility with JDK 21; support for Kotlin value classes; the use of virtual threads through the Executor interface; and an exploration for optimizations using Coordinated Restore at Checkpoint (CRaC). Further details on this release may be found in the release notes.

Versions 2023.0.2, 2022.0.8, and 2021.2.14, service releases of Spring Data, ship with bug fixes and respective dependency upgrades to sub-projects such as: Spring Data MongoDB 4.1.2, 4.0.8 and 3.4.14; Spring Data Elasticsearch 5.1.2, 5.0.8, and 4.4.14; and Spring Data Neo4j 7.1.2, 7.0.8 and 6.3.14.

Versions 2.2.0-M1, 2.1.1, 2.0.5 and 1.5.5, service releases of Spring HATEOAS deliver bug fixes, dependency upgrades and a fix for CVE-2023-34036, Forwarded Header Exploit with Spring HATEOAS on WebFlux, a vulnerability in which hypermedia-based responses produced by Spring HATEOAS might be exposed to malicious forwarded headers if they are not behind a trusted proxy. More details on these releases may be found in the release notes for version 2.2.0-M1, version 2.1.1, version 2.0.5 and version 1.5.5.

The release of Spring Initializr 0.20.0 with new features and improvements such as: support for Spring Boot 3.x and JDK 17; improved code generation in which method bodies can now define arbitrary statements using the CodeBlock class; nested annotations; support for Gradle 8.x; and improved build and raw text test assertions. Further details on this release may be found in the release notes.

Micronaut

After five milestones and one release candidate, the Micronaut Foundation has released Micronaut Framework 4.0.0 featuring baselines to JDK 17, Groovy 4.0, Kotlin 1.8, Gradle 8.x.

There is also support for GraalVM 23, virtual threads, HTTP/3 and io_uring. This new version also introduces: an expression language that allows developers to place expressions in annotations; and a new Java HTTP Client, a lighter implementation of the Micronaut HTTP Client as an alternative to the existing Netty-based implementation. More details on this release may be found in the release notes. InfoQ will follow up with a more detailed news story.

Payara

Payara has released their July 2023 edition of the Payara Platform that includes Community Edition 6.2023.7, Enterprise Edition 6.4.0 and Enterprise Edition 5.53.0 featuring bug fixes and component upgrades that includes Hazelcast 5.3.1 for adding socket options for a per-socket keep-alive configuration. However, this is not yet supported on the Windows OS as acknowledged by Hazelcast. There was also an improvement with the reduction of duplication between the POMs and BOMs such as the removal of: an unused POM file; an outdated temporary Jakarta staging repository; and jdk8 profiles. Further details on these versions may be found in the release notes for Community Edition 6.2023.7, Enterprise Edition 6.4.0 and Enterprise Edition 5.53.0.

Open Liberty

IBM has released version 23.0.0.7-beta of Open Liberty with a test implementation of version 1.0.0-beta2 of the Jakarta Data specification as an experiment with proposed specification features so developers can try out these features and provide feedback to influence the specification as it is being developed. Jakarta Data 1.0.0 has passed its plan review and will most-likely be included in Jakarta EE 11, scheduled for a GA release in the first quarter of 2024.

Helidon

Oracle has provided Helidon 2.6.2, a second point release, featuring dependency upgrades and notable fixes such as: an intermittent failure in the CipherSuiteTest class; avoid reflecting back user data coming from exception messages; and the response from the WebServer component should not be chunked if there is no entity. More details on this release may be found in the release notes.

Hibernate

The release of Hibernate Reactive 2.0.3.Final delivers a new getFactory() method to the Mutiny.Session and Stage.Session interfaces that return instances of the Mutiny.SessionFactory and Stage.SessionFactory interfaces, respectively, that created those sessions. Further details on this release may be found in the release notes.

Apache Software Foundation

The Apache Software Foundation has released versions 11.0.0-M9, 10.1.11, 9.0.78 and 8.5.91 of Apache Tomcat this past week. All four versions provide bug fixes and introduce new classes: ContextNamingInfoListener, a listener which creates context naming information environment entries; and PropertiesRoleMappingListener, a listener which populates the context's role mapping from a properties file. Version 11.0.0-M9 updates the implementations of the Jakarta Expression Language and Jakarta WebSocket specifications to align with the latest changes planned for Jakarta EE 11. More details on these releases may be found in the release notes for version 11.0.0-M9, version 10.1.11, version 9.0.78 and version 8.5.91.

Micrometer

Versions 1.12.0-M1, 1.11.2, 1.10.9 and 1.9.13 of Micrometer Metrics have been released featuring dependency upgrades and notable bug fixes such as: Micrometer Wavefront integration Proxy validation error with the default uri implementation; the removal of unnecessary ThreadLocal overhead for disabled log levels in the LogbackMetrics class; and a NullPointerException from the setValue() method defined in the ObservationThreadLocalAccessor class when there is no current scope. New features in version 1.12.0-M1 are: a configurable base time unit for registering Micrometer observations via the ObservationThreadLocalAccessor class; and improved instances of the Apache HttpAsyncClient interface instrumented with the MicrometerHttpClientInterceptor class to prevent meter I/O errors. Further details on these releases may be found in the release notes for version 1.12.0-M1, version 1.11.2, version 1.10.9 and version 1.9.13.

Similarly, versions 1.2.0-M1, 1.1.3 and 1.0.8 of Micrometer Tracing have been released featuring bug fixes, dependency upgrades and these new features: the addition of Java Microbenchmark Harness (JMH) benchmarks for basic tracing operations; and a new getDuration() method added to the FinishedSpan interface. More details on these releases may be found in the release notes for version 1.2.0-M1, version 1.1.3 and version 1.0.8.

Piranha

The release of Piranha 23.7.0 delivers notable changes such as: a migration from JBoss Jandex to SmallRye Jandex; a new FeatureManager interface to complement the existing Feature interface; and a new CracFeature class that enables Project CRaC. Further details on this release may be found in their documentation and issue tracker.

Project Reactor

The first milestone release of Project Reactor 2023.0.0 provides a dependency upgrade to reactor-core 3.6.0-M1. There was also a realignment to version 2023.0.0-M1 with the reactor-netty 1.1.9, reactor-kafka 1.3.19, reactor-pool 1.0.1, reactor-addons 3.5.1 and reactor-kotlin-extensions 1.2.2 artifacts that remain unchanged. More details on this release may be found in the changelog.

Similarly, Project Reactor 2022.0.9, the ninth maintenance release provides dependency upgrades to reactor-core 3.5.8, reactor-netty 1.1.9, reactor-kafka 1.3.19 and reactor-pool 1.0.1. There was also a realignment to version 2022.0.9 with the reactor-addons 3.5.1 and reactor-kotlin-extensions 1.2.2 artifacts that remain unchanged. Further details on this release may be found in the changelog.

JHipster

The second beta release of JHipster 8.0.0 delivers bug fixes and notable changes such as: a removal of the unused import of the HttpServletRequest interface; a removal of the <fork> parameter with the spring-boot-maven-plugin as it was unknown to the plugin and had issued a warning; and an improvement in the Heroku sub-generator. More details on this release may be found in the release notes.

Versions 0.38.0 and 0.37.0 of JHipster Lite have been released featuring many dependency upgrades and these new features: an upgrade to Prettier for Svelte 3 components; and support for dark mode. Further details on these releases may be found in the release notes for version 0.37.0 and version 0.37.0.

Yupiik

The release of Yupiik Fusion 1.0.5 provides: support for a contextless database; a more precise error message when the JSON module is not seen or ignored; and improvements to the generated resources.json and native-image.properties files to include Fusion JSON metadata. More details on this release may be found in the release notes.

Maven

The seventh alpha release of Maven 4.0.0 ships with notable changes such as: support for JDK 20; a migration of the internal StringUtils class to the StringUtils class offered by Apache Commons Lang; and a migration of the FileUtils class offered by Plexus-Utils to the FileUtils class offered by Apache Commons IO.

Gradle

Gradle 8.2.1, a patch release, delivers fixes on notable Gradle 8.2 issues such as: a StackOverflowError exception in building applications with Gradle 8.2 and Quarkus 2.16.7; a broken Micronaut JacocoReportAggregationPlugin; and an incorrect value of false set to the --no-feature flag when it should be set to true.

JetBrains

JetBrains has introduced a new AI Assistant in all of their IntelliJ-based IDEs. Powered by the JetBrains AI service providers (only OpenAI at this time), the service transparently connects developers to "different large language models (LLMs) and enables specific AI-powered features inside many JetBrains products." It is important to note that: a .NET Tools version is still under development; free to use during the EAP cycle; licensing and pricing model will come at a later date; and access may currently be limited by a waitlist. Further details on the AI Assistant in the .NET environment may be found in this detailed InfoQ news story.

About the Author

Rate this Article

Adoption
Style

BT