Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
121 changes: 121 additions & 0 deletions content/posts/2026-04-15-releases.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
---
layout: post
title: "RESTEasy 6.2.16.Final and 7.0.2.Final Releases"
date: 2026-04-15
author: James R. Perkins
---

Today we would like to announce the release of RESTEasy link:/downloads#6216final[6.2.16.Final] and RESTEasy
link:/downloads#702final[7.0.2.Final]. Both releases consist mostly of bug fixes and component upgrades.

One big change to both 6.2.16.Final and 7.0.2.Final was better support for https://redhat.atlassian.net/browse/RESTEASY-3693[CDI].
Previously, Jakarta REST resources required a public no-arg constructor, even when managed by CDI. This release relaxes that
requirement, allowing CDI to fully handle resource creation. This means your resources can now use constructor injection
without needing to maintain an additional no-arg constructor.

== 7.0.2.Final

RESTEasy 7.0.2.Final is a https://jakarta.ee/specifications/restful-ws/4.0/[Jakarta REST 4.0] implementation. This
release includes mostly bug fixes and component upgrades.

One notable upgrade in this release is the migration to Jackson 2.21 LTS. This is a long-term support version of Jackson,
which provides better stability and extended support for users who need a more stable JSON processing foundation.

Among the bug fixes, this release addresses an https://redhat.atlassian.net/browse/RESTEASY-3691[IllegalAccessError] that
could occur when posting large entities via the Apache HTTP client engine, and fixes for Server-Sent Events (SSE) handling
in Vert.x environments.

=== Component Upgrade

* https://redhat.atlassian.net/browse/RESTEASY-3687[RESTEASY-3687] Bump org.jboss.logging:jboss-logging from 3.6.1.Final to 3.6.2.Final
* https://redhat.atlassian.net/browse/RESTEASY-3688[RESTEASY-3688] Bump version.weld from 6.0.3.Final to 6.0.4.Final
* https://redhat.atlassian.net/browse/RESTEASY-3690[RESTEASY-3690] Bump the fasterxml-dependencies group across 1 directory with 2 updates
* https://redhat.atlassian.net/browse/RESTEASY-3696[RESTEASY-3696] Bump version.org.glassfish.jaxb from 4.0.6 to 4.0.7
* https://redhat.atlassian.net/browse/RESTEASY-3699[RESTEASY-3699] Bump org.jboss.logging:jboss-logging from 3.6.2.Final to 3.6.3.Final
* https://redhat.atlassian.net/browse/RESTEASY-3700[RESTEASY-3700] Bump org.jboss.arquillian:arquillian-bom from 1.10.0.Final to 1.10.1.Final
* https://redhat.atlassian.net/browse/RESTEASY-3701[RESTEASY-3701] Bump org.wildfly:wildfly-channel-maven-plugin from 1.0.30 to 1.0.31
* https://redhat.atlassian.net/browse/RESTEASY-3702[RESTEASY-3702] Bump version.io.undertow from 2.3.20.Final to 2.3.23.Final
* https://redhat.atlassian.net/browse/RESTEASY-3704[RESTEASY-3704] Bump org.wildfly.security:wildfly-elytron-ssl from 2.6.7.Final to 2.6.8.Final
* https://redhat.atlassian.net/browse/RESTEASY-3705[RESTEASY-3705] Bump org.eclipse.jetty:jetty-server from 12.0.15 to 12.0.32 in /resteasy-dependencies-bom
* https://redhat.atlassian.net/browse/RESTEASY-3707[RESTEASY-3707] Upgrade Jackson to 2.21.1 LTS
* https://redhat.atlassian.net/browse/RESTEASY-3709[RESTEASY-3709] Bump org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-bom from 3.3.4 to 3.3.5
* https://redhat.atlassian.net/browse/RESTEASY-3710[RESTEASY-3710] Bump version.io.undertow from 2.3.23.Final to 2.3.24.Final
* https://redhat.atlassian.net/browse/RESTEASY-3711[RESTEASY-3711] Bump com.fasterxml.jackson:jackson-bom from 2.21.1 to 2.21.2 in the fasterxml-dependencies group
* https://redhat.atlassian.net/browse/RESTEASY-3719[RESTEASY-3719] Bump org.wildfly:wildfly-channel-maven-plugin from 1.0.31 to 1.0.32
* https://redhat.atlassian.net/browse/RESTEASY-3720[RESTEASY-3720] Bump org.apache.httpcomponents:httpasyncclient from 4.1.4 to 4.1.5

=== Enhancement

* https://redhat.atlassian.net/browse/RESTEASY-3596[RESTEASY-3596] Contextual scheduled executor service causes inadvertent Thread + classloader leak
* https://redhat.atlassian.net/browse/RESTEASY-3693[RESTEASY-3693] Relax Constructor Requirements for CDI-Managed Jakarta REST Components

=== Bug

* https://redhat.atlassian.net/browse/RESTEASY-3359[RESTEASY-3359] SseEventSink close does not update the request for Vert.x
* https://redhat.atlassian.net/browse/RESTEASY-3683[RESTEASY-3683] EJB's should be allowed to have annotated interface methods as well as implementation methods
* https://redhat.atlassian.net/browse/RESTEASY-3685[RESTEASY-3685] Few test fails with Semeru (IBM) JDK
* https://redhat.atlassian.net/browse/RESTEASY-3691[RESTEASY-3691] IllegalAccessError when POSTing entity larger than in-memory threshold via ManualClosingApacheHttpClient43Engine

=== Task

* https://redhat.atlassian.net/browse/RESTEASY-3660[RESTEASY-3660] Deprecate the resteasy.patch.filter.legacy context parameter
* https://redhat.atlassian.net/browse/RESTEASY-3686[RESTEASY-3686] Delete HeaderEmptyHostTest to unit test due to Undertow security hardening https://redhat.atlassian.net/browse/UNDERTOW-2656[UNDERTOW-2656] and lack of core framework relevance
* https://redhat.atlassian.net/browse/RESTEASY-3698[RESTEASY-3698] Remove the BASE \+ i for the ID patterns in the messages and message loggers
* https://redhat.atlassian.net/browse/RESTEASY-3708[RESTEASY-3708] Refactor the `FakeHttpServer` in the unit tests to no use the `com.sun.net.httpserver.HttpServer`

Full releases notes can be found at https://github.com/resteasy/resteasy/releases/tag/7.0.2.Final.

== 6.2.16.Final

RESTEasy 6.2.16.Final is a https://jakarta.ee/specifications/restful-ws/3.1/[Jakarta REST 3.1] implementation. This
release includes mostly bug fixes and component upgrades.

While this should not affect you as a user, it should be noted that in https://redhat.atlassian.net/browse/RESTEASY-3712[RESTEASY-3712]
we upgrade to a new minor of JBoss Logging. This was done for better support in modular environments. We did, however,
keep backwards compatibility so using JBoss Logging 3.5.x should also work.

Similar to 7.0.2.Final, this release addresses an https://redhat.atlassian.net/browse/RESTEASY-3691[IllegalAccessError]
when posting large entities, fixes for Server-Sent Events (SSE) in Vert.x environments, and resolves a
https://redhat.atlassian.net/browse/RESTEASY-3697[SecurityException] in SSE when the security manager is enabled.

=== Component Upgrade

* https://redhat.atlassian.net/browse/RESTEASY-3689[RESTEASY-3689] Bump version.weld from 5.1.6.Final to 5.1.7.Final
* https://redhat.atlassian.net/browse/RESTEASY-3696[RESTEASY-3696] Bump version.org.glassfish.jaxb from 4.0.6 to 4.0.7
* https://redhat.atlassian.net/browse/RESTEASY-3700[RESTEASY-3700] Bump org.jboss.arquillian:arquillian-bom from 1.10.0.Final to 1.10.1.Final
* https://redhat.atlassian.net/browse/RESTEASY-3701[RESTEASY-3701] Bump org.wildfly:wildfly-channel-maven-plugin from 1.0.30 to 1.0.31
* https://redhat.atlassian.net/browse/RESTEASY-3702[RESTEASY-3702] Bump version.io.undertow from 2.3.20.Final to 2.3.23.Final
* https://redhat.atlassian.net/browse/RESTEASY-3703[RESTEASY-3703] Bump version.io.netty.netty4 from 4.1.128.Final to 4.1.131.Final
* https://redhat.atlassian.net/browse/RESTEASY-3704[RESTEASY-3704] Bump org.wildfly.security:wildfly-elytron-ssl from 2.6.7.Final to 2.6.8.Final
* https://redhat.atlassian.net/browse/RESTEASY-3706[RESTEASY-3706] Bump com.fasterxml.jackson:jackson-bom from 2.18.5 to 2.18.6 in the fasterxml-dependencies group
* https://redhat.atlassian.net/browse/RESTEASY-3709[RESTEASY-3709] Bump org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-bom from 3.3.4 to 3.3.5
* https://redhat.atlassian.net/browse/RESTEASY-3710[RESTEASY-3710] Bump version.io.undertow from 2.3.23.Final to 2.3.24.Final
* https://redhat.atlassian.net/browse/RESTEASY-3712[RESTEASY-3712] Upgrade the JBoss Logging dependency to 3.6.3.Final
* https://redhat.atlassian.net/browse/RESTEASY-3718[RESTEASY-3718] Bump version.io.netty.netty4 from 4.1.131.Final to 4.1.132.Final
* https://redhat.atlassian.net/browse/RESTEASY-3719[RESTEASY-3719] Bump org.wildfly:wildfly-channel-maven-plugin from 1.0.31 to 1.0.32

=== Enhancement

* https://redhat.atlassian.net/browse/RESTEASY-3596[RESTEASY-3596] Contextual scheduled executor service causes inadvertent Thread + classloader leak
* https://redhat.atlassian.net/browse/RESTEASY-3693[RESTEASY-3693] Relax Constructor Requirements for CDI-Managed Jakarta REST Components

=== Bug

* https://redhat.atlassian.net/browse/RESTEASY-3359[RESTEASY-3359] SseEventSink close does not update the request for Vert.x
* https://redhat.atlassian.net/browse/RESTEASY-3683[RESTEASY-3683] EJB's should be allowed to have annotated interface methods as well as implementation methods
* https://redhat.atlassian.net/browse/RESTEASY-3685[RESTEASY-3685] Few test fails with Semeru (IBM) JDK
* https://redhat.atlassian.net/browse/RESTEASY-3691[RESTEASY-3691] IllegalAccessError when POSTing entity larger than in-memory threshold via ManualClosingApacheHttpClient43Engine
* https://redhat.atlassian.net/browse/RESTEASY-3697[RESTEASY-3697] The SseEventOutputImpl will throw a security exception if the security manager is enabled when the stream is closed

=== Task

* https://redhat.atlassian.net/browse/RESTEASY-3660[RESTEASY-3660] Deprecate the resteasy.patch.filter.legacy context parameter
* https://redhat.atlassian.net/browse/RESTEASY-3686[RESTEASY-3686] Delete HeaderEmptyHostTest to unit test due to Undertow security hardening https://redhat.atlassian.net/browse/UNDERTOW-2656[UNDERTOW-2656] and lack of core framework relevance
* https://redhat.atlassian.net/browse/RESTEASY-3698[RESTEASY-3698] Remove the BASE \+ i for the ID patterns in the messages and message loggers
* https://redhat.atlassian.net/browse/RESTEASY-3708[RESTEASY-3708] Refactor the `FakeHttpServer` in the unit tests to no use the `com.sun.net.httpserver.HttpServer`

Full releases notes can be found at https://github.com/resteasy/resteasy/releases/tag/6.2.16.Final.

== Finally

As always, https://github.com/resteasy/resteasy/discussions/[feedback] is welcome. Stay safe, and, depending on where you are, stay warm or be cool.
34 changes: 34 additions & 0 deletions data/releases.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
- group: 7.0.x
supported: true
detail:
- version: 7.0.2.Final
date: 2026-04-15
license: ASL v2
source: https://github.com/resteasy/resteasy/releases/download/v7.0.2.Final/resteasy-7.0.2.Final-src.zip
size: 36.5 MB
release_notes: https://github.com/resteasy/resteasy/releases/tag/v7.0.2.Final
download_link: https://github.com/resteasy/resteasy/releases/download/v7.0.2.Final/resteasy-7.0.2.Final-all.zip
download_text: resteasy-7.0.2.Final-all.zip
jakarta_rest_spec:
version: 4.0
link: https://jakarta.ee/specifications/restful-ws/4.0/jakarta-restful-ws-spec-4.0.html
java_doc: https://jakarta.ee/specifications/restful-ws/4.0/apidocs
documentation:
examples: https://github.com/resteasy/resteasy-examples/
link: https://docs.resteasy.dev/7.0/userguide/
pdf: https://docs.resteasy.dev/7.0/userguide/resteasy-reference-guide.pdf
java_doc: https://docs.resteasy.dev/7.0/javadocs/
- version: 7.0.1.Final
date: 2025-12-10
license: ASL v2
Expand Down Expand Up @@ -38,6 +55,23 @@
- group: 6.2.x
supported: true
detail:
- version: 6.2.16.Final
date: 2026-04-15
license: ASL v2
source: https://github.com/resteasy/resteasy/releases/download/v6.2.16.Final/resteasy-6.2.16.Final-src.zip
size: 41.1 MB
release_notes: https://github.com/resteasy/resteasy/releases/tag/v6.2.16.Final
download_link: https://github.com/resteasy/resteasy/releases/download/v6.2.16.Final/resteasy-6.2.16.Final-all.zip
download_text: resteasy-6.2.16.Final-all.zip
jakarta_rest_spec:
version: 3.1
link: https://jakarta.ee/specifications/restful-ws/3.1/jakarta-restful-ws-spec-3.1.html
java_doc: https://jakarta.ee/specifications/restful-ws/3.1/apidocs
documentation:
examples: https://github.com/resteasy/resteasy-examples/
link: https://docs.resteasy.dev/6.2/userguide/
pdf: https://docs.resteasy.dev/6.2/userguide/resteasy-reference-guide.pdf
java_doc: https://docs.resteasy.dev/6.2/javadocs/
- version: 6.2.15.Final
date: 2025-12-10
license: ASL v2
Expand Down
19 changes: 17 additions & 2 deletions public/css/bootstrap-theme.css
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,18 @@ h4 {
margin-top: 0 !important;
}

/* ============================================
LINKS - Modern hover behavior
============================================ */
a {
text-decoration: none !important;
transition: all 0.15s ease !important;
}

a:hover {
text-decoration: underline !important;
}

/* Dark mode heading colors */
[data-bs-theme="dark"] h1 {
color: #e6edf3 !important;
Expand Down Expand Up @@ -1680,11 +1692,14 @@ table tbody tr:last-child td,
color: #e6edf3 !important;
}

[data-bs-theme="dark"] p,
[data-bs-theme="dark"] a {
[data-bs-theme="dark"] p {
color: #c9d1d9 !important;
}

[data-bs-theme="dark"] a {
color: var(--resteasy-accent) !important;
}

[data-bs-theme="dark"] a:hover {
color: var(--resteasy-accent-light) !important;
}
Expand Down
60 changes: 58 additions & 2 deletions public/js/theme-toggle.js → public/js/site.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
/**
* RESTEasy Theme Switcher
* Toggles between light and dark modes using Bootstrap's data-bs-theme
* RESTEasy Site JavaScript
* Main JavaScript file containing theme switcher, navigation, and interactive features
*/

/**
* Theme Switcher
* Toggles between light and dark modes using Bootstrap's data-bs-theme
*/
(function() {
'use strict';

Expand Down Expand Up @@ -151,3 +155,55 @@
});
});
})();

/**
* Clickable News Cards
* Makes entire news/blog cards clickable while maintaining link accessibility
*/
(function() {
'use strict';

document.addEventListener('DOMContentLoaded', () => {
// Select all news/blog cards
const cards = document.querySelectorAll('.news-list-blocks .card, .blog-post-card');

cards.forEach(card => {
// Find the main link (either in title or "Read More")
const link = card.querySelector('.card-title a, .post-title a, a[href*="/posts/"]');

if (link) {
// Make the card clickable
card.style.cursor = 'pointer';

card.addEventListener('click', (e) => {
// Don't trigger if clicking on an actual link (let the link handle it)
if (e.target.tagName === 'A') {
return;
}

// Respect modifier keys (cmd/ctrl click for new tab, etc.)
if (e.metaKey || e.ctrlKey) {
window.open(link.href, '_blank');
} else {
window.location.href = link.href;
}
});

// Improve accessibility - make cards keyboard navigable
card.setAttribute('tabindex', '0');
card.setAttribute('role', 'article');

// Handle keyboard navigation (Enter key)
card.addEventListener('keydown', (e) => {
if (e.key === 'Enter') {
if (e.metaKey || e.ctrlKey) {
window.open(link.href, '_blank');
} else {
window.location.href = link.href;
}
}
});
}
});
});
})();
4 changes: 2 additions & 2 deletions templates/partials/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@
integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL"
crossorigin="anonymous"></script>

<!-- Theme Toggle -->
<script src="{site.url('/js/theme-toggle.js').absolute}"></script>
<!-- Site JavaScript -->
<script src="{site.url('/js/site.js').absolute}"></script>
</head>