This week's Java roundup for July 5th, 2021, features news from JDK 17, JDK 18, Open Liberty 21.0.0.7, Payara Server Community 6.2021.1.Alpha1, Quarkus 2.0.1, Spring Framework, Apache Tika 1.27, javax
to jakarta
namespace migration, the road to IntelliJ IDEA 2021.2, and the July 2021 TIOBE Index.
JDK 17
Build 30 of the JDK 17 early-access builds was made available this past week featuring updates from Build 29 that include fixes to various issues. More details may be found in the release notes.
JDK 18
Build 5 of the JDK 18 early-access builds was also made available featuring updates from Build 4 that include fixes to various issues. More details may be found in the release notes.
For both JDK 17 and JDK 18, developers are encouraged to report bugs via the Java Bug Database.
Open Liberty
IBM has released version 21.0.0.7 of Open Liberty featuring a significant amount of bug fixes that include: deadlock within the lifecycle of an EJB Singleton; login failure of OIDC relying party if clientSecret
wasn't properly configured; JavaMail attempting to access the /META-INF/javamail.default.address.map
file that only exists in implementation; and client IDs containing GB 18030 characters not properly working upon registering an OAuth client.
Payara
Payara has announced that their Community Edition of Payara Server 6.2021.1.Alpha1 is now certified as a compatible product of Jakarta EE 9.1 Full Profile. Payara joins Eclipse GlassFish 6.1 RC1, Open Liberty 21.0.0.3, WildFly 23.0.2 and ManageCat 6.1.0 on the list of Full Profile compatible products.
Quarkus
Red Hat has released Quarkus 2.0.1, the first maintenance release to Quarkus 2.0, featuring a number of bux fixes that include: upgrade SmallRye GraphQL to version 1.2.7; Quarkus OIDC Client unable to retrieve an access-token; improvements to the integration of OpenTelemetry; and continuous testing not applying an updated log level changed in the application.properties
file. More details may be found in the changelog and a migration guide is available for developers who wish to upgrade to Quarkus 2.0.
Spring Framework
Spring GraphQL, a new project that integrates GraphQL Java with the Spring Framework, has been introduced to the Java community. As a successor to the GraphQL Java Spring project, Spring GraphQL will provide additional security, improved testing and exception handling, metrics and integration with Querydsl.
SR12 of the Spring Cloud Hoxton Release Train has been made available that primarily features bug fixes. This will be the last service release in this release train, but will be supported with critical bug fixes and handling security issues until the end of February 2022. More details may be found in the release notes.
Spring Authorization Server 0.1.2 has been released featuring: the ability to configure custom Authorization Consent pages, authorization endpoints and token endpoints; and JDBC implementations of the RegisteredClientRepository
and OAuth2AuthorizationService
and OAuth2AuthorizationConsentService
interfaces.
Apache Tika
Apache Tika has released version 1.27 of their metadata extraction toolkit. Formerly a subproject of Apache Lucene, this latest version includes a new JSON handler for the /tika
endpoint in the TikaServer, a new MP4 parser, and numerous bug fixes and dependency upgrades. More details may be found in the release notes.
javax
to jakarta
Namespace Migration
Ivar Grimstad, Jakarta EE developer advocate at the Eclipse Foundation, discussed the javax
to jakarta
namespace migration tools in a recent Hashtag Jakarta EE blog post. Joining the Eclipse Transformer project, showcased at the JakartaOne 2020 conference, are the Tomcat Migration Tool for Jakarta EE, a configurable command-line tool, and a built-in automatic Java EE to Jakarta EE migration utility that is available in the beta release of IntelliJ IDEA 2021.2.
The Road to IntelliJ IDEA 2021.2
JetBrains has released a beta version of IntelliJ IDEA 2021.2. New features include: a new user interface for managing Maven and Gradle dependencies; the aforementioned automated migration from Java EE to Jakarta EE; visibility-based color settings for Java class access specifiers (public, protected and private); advanced IDE settings; and project-wide analysis for Java projects.
July 2021 TIOBE Index
Celebrating its 20th anniversary this month, the July 2021 edition of the TIOBE Index ranked Java as the #2 programming language just behind C and just ahead of Python. Over the past 20 years, Java has consistently been ranked in the top three, in which it achieved the #1 rating in April 2020 and the #3 rating in June 2021.