Release notes for Red Hat JBoss Enterprise Application Platform 8.1


Red Hat JBoss Enterprise Application Platform 8.1

These release notes contain important information related to Red Hat JBoss Enterprise Application Platform release 8.1

Red Hat Customer Content Services

Abstract

These release notes contain important information related to Red Hat JBoss Enterprise Application Platform release 8.1.

Preface

These release notes contain important information related to Red Hat JBoss Enterprise Application Platform 8.1.

Providing feedback on JBoss EAP documentation

To report an error or to improve our documentation, log in to your Red Hat Jira account and submit an issue. If you do not have a Red Hat Jira account, then you will be prompted to create an account.

Procedure

  1. Click the following link to create a ticket.
  2. Enter a brief description of the issue in the Summary.
  3. Provide a detailed description of the issue or enhancement in the Description. Include a URL to where the issue occurs in the documentation.
  4. Clicking Submit creates and routes the issue to the appropriate documentation team.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. We are beginning with these four terms: master, slave, blacklist, and whitelist. Due to the enormity of this endeavor, these changes will be gradually implemented over upcoming releases. For more details on making our language more inclusive, see our CTO Chris Wright’s message.

We are in the process of modernizing the Red Hat JBoss Enterprise Application Platform 8.1 documentation. We are working to create more solution-centric documentation.

The JBoss EAP 8.1 documentation contains content specific to the JBoss EAP 8.1 release including new and enhanced features found in JBoss EAP 8.1. Functionality from previous releases that are still supported in JBoss EAP 8.1 can be accessed in the JBoss EAP 7.4 documentation set. You can access the documentation set at Product Documentation for Red Hat JBoss Enterprise Application Platform 7.4.

The following is a suggested approach for using the JBoss EAP 8.1 documentation:

  1. Read the JBoss EAP 8.1 Release notes to learn about new, enhanced, unsupported, and removed features.
  2. Read the other JBoss EAP 8.1 documentation set for detailed information about new and enhanced features.
  3. Read the JBoss EAP 8.1 Migration Guide for details on how to migrate applications to JBoss EAP 8.1.
  4. If you need information on features supported from previous releases that have not been enhanced in JBoss EAP 8.1, see the JBoss EAP 7.4 documentation set at Product Documentation for Red Hat JBoss Enterprise Application Platform 7.4. For example, development and configuration guides are available in the JBoss EAP 7.4 documentation set.

Chapter 2. Supported configurations

For more information about supported and tested configurations for Java Virtual Machines (JVMs) and JBoss EAP 8.1, including commonly used operating systems, databases, and JMS brokers, see the Red Hat JBoss Enterprise Application Platform 8.1 supported configurations Knowledgebase article on the Red Hat Customer Portal.

For more information about included modules, supported standards, and Red Hat JBoss Enterprise Application Platform component details, see the following support documents:

2.1. OpenShift images

Builder and Runtime images are supported for OpenJDK 17 / RHEL 9 and OpenJDK 21 / RHEL 9 on Intel, IBM systems Z & P, and ARM architectures.

You can now install Red Hat build of Keycloak SAML adapters using the Keycloak SAML adapter Galleon feature pack. For information about Red Hat build of Keycloak, see the Red Hat build of Keycloak product page.

2.3. MariaDB Driver logging dependency

In JBoss EAP 8.1, the MariaDB Driver includes a dependency on the org.slf4j module to improve logging functionality. This prevents possible errors when slf4j classes are unavailable, and ensures proper handling of log messages. When deploying the MariaDB Driver module, you must ensure the slf4j dependencies are available to leverage this enhancement. For more information, see How to configure MariaDB driver 3.0+ as a JBoss Module in EAP 7 / 8.

2.4. JBoss EAP 8.1 Operator

JBoss EAP 8.1 now supports the EAP operator. You can now deploy your JBoss EAP 8.1 applications using the JBoss EAP operator. For more information, see JBoss EAP Operator Support Policy.

Chapter 3. New features and enhancements

JBoss EAP 8.1 introduces the following new features and enhancements.

3.1. Management CLI

You can now export your server configuration as XML using the new read-config-as-xml-file operation. This feature works for both standalone servers and managed domains in JBoss EAP. The operation returns a stream that you can either view directly in the management CLI or save to a file for later use.

  • To display the server configuration, use the operation with the attachment display command.

    Example: Display the configuration for a standalone server or a domain

    attachment display --operation=:read-config-as-xml-file

    Example: Display the configuration for a host

    attachment display --operation=/host=<host-name>:read-config-as-xml-file

    Example: Display the configuration for a server on a host

    attachment display --operation=/host=<host-name>/server=<server-name>:read-config-as-xml-file
  • To save the server configuration, use the operation with the attachment save command.

    Example: Save the configuration for a standalone server or a domain to a file

    attachment save --operation=:read-config-as-xml-file --file=<file-name>

    Example: Save the configuration for a host

    attachment save --operation=/host=<host-name>:read-config-as-xml-file --file=<file-name>

    Example: Display the configuration for a server on a host

    attachment save --operation=/host=<host-name>/server=<server-name>:read-config-as-xml-file --file=<file-name>

The read-config-as-xml, which returned the server configuration as a String object has been deprecated due to the introduction of the read-config-as-xml-file operation.

3.1.2. Updated transaction heuristics display

In previous JBoss EAP versions, the management CLI reported a generic transaction HEURISTIC status and participants were designated by a numbered list. For example:

[standalone@localhost:9990 /] /subsystem=transactions/log-store=log-store:read-resource(recursive=true, include-runtime=true)

{
    "outcome" => "success",
    "result" => {
        "expose-all-logs" => false,
        "type" => "default",
        "transactions" => {"0:ffff0a8004bc:-28a3b85d:66fd4682:10" => {
            "age-in-seconds" => "15",
            "id" => "0:ffff0a8004bc:-28a3b85d:66fd4682:10",
            "jmx-name" => undefined,
            "type" => "StateManager/BasicAction/TwoPhaseCoordinator/AtomicAction",
            "participants" => {"1" => {
                "eis-product-name" => undefined,
                "eis-product-version" => undefined,
                "jmx-name" => undefined,
                "jndi-name" => "1",
                "status" => "HEURISTIC",
                "type" => "/StateManager/AbstractRecord/XAResourceRecord"
            }}
        }}
    }
}

In JBoss EAP 8.1, the management CLI reports a more precise status: HEURISTIC_COMMIT, HEURISTIC_ROLLBACK, HEURISTIC_HAZARD, or HEURISTIC_MIXED. Participants are designated now by jndi-name. For example:

[standalone@localhost:9990 /] /subsystem=transactions/log-store=log-store:read-resource(recursive=true, include-runtime=true)

{
    "outcome" => "success",
    "result" => {
        "expose-all-logs" => false,
        "type" => "default",
        "transactions" => {"0:ffff0a83027b:49e508a7:66fbc17e:10" => {
            "age-in-seconds" => "6668",
            "id" => "0:ffff0a83027b:49e508a7:66fbc17e:10",
            "jmx-name" => undefined,
            "type" => "StateManager/BasicAction/TwoPhaseCoordinator/AtomicAction",
            "participants" => {"java:/MockXAResource" => {
                "eis-product-name" => "MockXAResource Test",
                "eis-product-version" => "0.1.Mock",
                "jmx-name" => undefined,
                "jndi-name" => "java:/MockXAResource",
                "status" => "HEURISTIC_ROLLBACK",
                "type" => "/StateManager/AbstractRecord/XAResourceRecord"
            }}
        }}
    }
}

You may need to update existing scripts and user procedures.

3.2. OpenShift

Startup probe configuration is now available in JBoss EAP using Helm Charts. You can configure startup, readiness and liveness probes. You can also adjust all probe parameters, including timeouts, delays and probe types.

3.2.2. Helm Charts in JBoss EAP 8.1

JBoss EAP 8.1 provides a Helm chart for building and deploying JBoss EAP 8.1 applications on OpenShift. You can now also build and deploy JBoss EAP applications running on OpenJDK 21.

3.3. Web services

3.3.1. JSON merge patch

JBoss EAP 8.1 supports the use of JSON merge patches. You can use the JSON merge patch feature to change the target resource. The client sends the JSON change directly to the server resource where it is merged to the target resource. The requested Uniform Resource Identifier (URI) is used to identify the target resource.

             PATCH /StudentPatchTest/students/1 HTTP/1.1
             Content-Type: application/merge-patch+json
             Content-Length: 34
             Host: localhost:8090
             Connection: Keep-Alive
             {"firstName":"Green","school":null}

The JSON merge patch feature is enabled by default. To use this feature, annotate the resource method with @Consumes("application/merge-patch+json"). For more information about the JSON merge patch feature, see JSON patch and JSON merge patch in the RESTEasy user guide.

The configuration switch, resteasy.patchfilter.disabled, is set to false by default. For more information about this switch, see Configuration switches in the RESTEasy user guide.

    @GET
    @Path("/{id}")
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON)
    public Student getStudent(@PathParam("id") long id) {
        Student student = studentsMap.get(id);
        if (student == null) {
            throw new NotFoundException();
        }
        return student;
    }

    @PATCH
    @Path("/{id}")
    @Consumes("application/merge-patch+json")
    @Produces(MediaType.APPLICATION_JSON)
    public Student mergePatchStudent(@PathParam("id") long id, Student student)
        {
        if (studentsMap.get(id) == null)
        {
        throw new NotFoundException();
        }
        studentsMap.put(id, student);
        return student;
        }

3.4. Quickstarts and BOMs

3.4.1. HTTP custom mechanism quickstart

An http-custom-mechanism quickstart is now available in JBoss EAP 8.1. This quickstart illustrates how to implement a custom HTTP authentication mechanism and register the mechanism with the elytron subsystem. For more information, see the jboss-eap-quickstarts github repository.

3.4.2. JAX-RS JSON Web Tokens quickstart

A new jaxrs-jwt quickstart is available. It provides an example of a JAX-RS secured application that uses JSON Web Tokens (JWT) for enhanced security. See jboss-eap-quickstarts.

3.5. ActiveMQ Artemis

JBoss EAP 8.1 introduces the new public org.apache.activemq.artemis.client module for accessing messaging classes from user deployments. Previously, no similar public module was available, and applications might have relied on the deprecated internal org.apache.activemq.artemis module instead.

The internal org.apache.activemq.artemis module still exists but was changed to private and refactored. Some classes are no longer accessible through it and are now available in the new org.apache.activemq.artemis.client module. This change might cause applications that use the internal module to encounter ClassNotFoundException errors. You must update your application configurations to use the new client module.

For more information, see Replace dependency on deprecated ActiveMQ Artemis module in the Migration Guide.

3.6. High availability

The scale-down-commit-interval attribute is now added to the HA policy. Moving messages from one broker to another during scale-down involves an internal transaction per queue. This attribute defines the number of messages in that transaction so that the memory requirements for the transaction don’t exceed the limits of the available heap.

3.7. Server provisioning

3.7.1. JBoss EAP Maven plug-in

You can now use the JBoss EAP Maven plug-in to provision a JBoss EAP for bare metal. In previous releases you could only use the JBoss EAP Maven plug-in for OpenShift Container Platform. Additionally, you can package the provisioned server,as a bootable jar on baremetal.

For more information, see Provisioning JBoss EAP.

3.8. Development environments

3.8.1. VSCode

Starting in JBoss EAP 8.1 Beta, VSCode integration is fully supported.

4.1. Unsupported features

The following features are not supported by Red Hat.

4.1.1. Bootable JAR on OpenShift

Bootable JAR on OpenShift is not supported for JBoss EAP 8.1. Instead, you can use the content trimming capability for deployment runtime in JBoss EAP for OpenShift.

For more information, see Capability trimming in JBoss EAP for OpenShift in Using JBoss EAP on OpenShift Container Platform.

4.2. Deprecated features

Some features are deprecated with this release. This means that no enhancements will be made to these features, and they might be removed in a future release. For more information, see Deprecated in Red Hat JBoss Enterprise Application Platform (EAP) 8.

Red Hat will continue providing full support and bug fixes under our standard support terms and conditions. For more information about the Red Hat support policy, see the Red Hat JBoss Middleware Product Update and Support Policy located on the Red Hat Customer Portal.

The following features are deprecated:

4.2.1. read-config-as-xml operation

The read-config-as-xml operation has been deprecated in JBoss EAP 8.1. Use the read-config-as-xml-file operation instead. For more information, see New operation to export server configuration as a stream.

4.2.2. Java 11

Java 11 has been deprecated and support ends with JBoss EAP 8.1.

4.2.3. OpenShift OpenJDK 17 images

OpenShift OpenJDK 17 images are deprecated with JBoss EAP 8.1 and will be removed in an upcoming JBoss EAP 8.2 minor release.

4.3. Removed features

JBoss EAP 8.1 removes the following features.

name attribute removed from management model resources

In JBoss EAP 8.1, the name attribute has been removed from management model resources. The attribute has been deprecated since JBoss EAP 6.1 because it is redundant. The resource name is already part of the resource address.

This change can break existing CLI scripts that still use the name attribute. For example, a script that works in JBoss EAP 8.0 will fail in JBoss EAP 8.1 if the name attribute is present.

Example of a script that works in JBoss EAP 8.0

[standalone@embedded /] /subsystem=logging/periodic-rotating-file-handler=FILE2:add(append=true,autoflush=true,enabled=true,file={path=server2.log,relative-to=jboss.server.log.dir},level=ALL,name=FILE2,named-formatter=PATTERN,suffix=.yyyy-MM-dd)
{"outcome" => "success"}

Example of a script that fails in JBoss EAP 8.1

[standalone@embedded /] /subsystem=logging/periodic-rotating-file-handler=FILE2:add(append=true,autoflush=true,enabled=true,file={path=server2.log,relative-to=jboss.server.log.dir},level=ALL,name=FILE2,named-formatter=PATTERN,suffix=.yyyy-MM-dd)
'name' is not found among the supported properties: [append, autoflush, enabled, encoding, file, filter, filter-spec, formatter, level, named-formatter, suffix]

Corrected script without the name attribute (works in JBoss EAP 8.1)

[standalone@embedded /] /subsystem=logging/periodic-rotating-file-handler=FILE2:add(append=true,autoflush=true,enabled=true,file={path=server2.log,relative-to=jboss.server.log.dir},level=ALL,named-formatter=PATTERN,suffix=.yyyy-MM-dd)
{"outcome" => "success"}

4.3.1. --no-resolve-local-cache parameter

The --no-resolve-local-cache parameter for the wildfly-jar-maven-plugin has been removed. The behavior previously enabled by this parameter is now default. The plugin no longer resolves artifacts from the local Maven cache by default.

To restore the previous default behavior of resolving artifacts from the local cache, you must now explicitly use the new --use-default-local-cache parameter in your configuration.

Chapter 5. Resolved issues

See Resolved Issues for Red Hat JBoss Enterprise Application Platform 8.1 to view the list of issues originating from customer cases resolved for this current release, as well as resolved issues that customers could encounter in previous releases.

Chapter 6. Known issues

See Known Issues for Red Hat JBoss Enterprise Application Platform 8.1 to view the list of known issues for this release.

Translations in German, Spanish, and Portuguese are not included in the JBoss EAP 8.1 release. These translations will be provided in a subsequent update release.





Revised on 2025-08-28 18:13:11 UTC

Legal Notice

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Theme

© 2026 Red Hat
Back to top