The Beta release of Red Hat JBoss Enterprise Application Platform 7.4 is now available. This release has been made in preparation for the general availability (GA) release later in 2021, and contains a number of new features and enhancements. This article offers a summary of the most important improvements and illustrates an easy way to get started with JBoss EAP.
What's new
JBoss EAP 7.4 Beta continues the evolution of Enterprise Application Platform and its support for the Java and Jakarta EE platforms. The 7.4 release, being part of the JBoss Enterprise Application Platform 7.x family, continues backward compatibility with earlier 7.x releases, and is supported across a range of operating systems, hardware platforms, and Red Hat OpenShift. Built on the upstream Wildfly project, JBoss EAP gives enterprise customers a solid, flexible, and high-performing platform on which to deploy mission-critical Java applications.
JBoss EAP 7.4 Beta includes new enhancements in security, server management, developer features, and more.
Security
These new features make it easier to manage access to your instances and integrate your applications with other parts of the open source ecosystem.
- Elytron can update credentials automatically in other subsystems. The
credential-reference
attribute automatically picks up and propagates new credentials. - TLS 1.3 is supported when on Java 11, although it is disabled by default.
- You can connect to a remote Git repository with your SSH credentials to manage server configuration, properties files, and deployments. This enables easy configuration change management in a DevOps-friendly source repository. The following video demonstrates this new capability:
- For testing and training, the platform generates self-signed certificates automatically for Undertow HTTP listeners. This feature purposely bypasses good security practices, and therefore should not be used in production.
- Distributed security realms enable the sharing of identities across realms.
- RESTEasy clients are integrated with Elytron, enabling these clients access to credentials and SSL configurations.
In addition, a number of important CVE security fixes were delivered in JBoss EAP 7.4 Beta and will be part of the GA release as well. Consult the release notes for the full list.
Server management
These new features help reduce errors and give you more information about configuration and your running instances.
- Global directories make it easier to distribute shared libraries, saving time and reducing work after you make library changes.
- Read-only configuration directories reduce configuration drift and are more compatible with immutable deployments, such as on OpenShift.
- Runtime statistics are maintained for managed executor services, reporting active threads, completed tasks, hung threads, maximum threads that can be used, and more.
Developer features
These new features add valuable functionality to applications.
- There are several enhancements to EJB, including timeout configuration and automatic bean discovery over HTTP.
- Active MQ topics can be paused temporarily.
Supported platforms
As always, the list of supported platforms continues to evolve. In release 7.4, several platforms and features have been deprecated due to high maintenance cost, low community interest, and the presence of better alternatives. For the full list of new, changed, or deprecated platforms and features, please refer to the release notes.
Test driving a sample app
In this section, we'll deploy JBoss EAP through OpenShift Source-to-Image (S2I) images. To run the example you'll need to log in to an OpenShift 4.x cluster that has access to registry.redhat.io
. You must also be able to use the oc
command line. Follow these steps:
- Create a new project to house the app:
$ oc new-project eap-demo
- Import the ImageStream definitions for JBoss EAP 7.4 Beta on OpenJDK 11 (this requires
cluster-admin
privileges):$ oc replace --force -n openshift -f https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74-beta/eap74-beta-openjdk11-image-stream.json
- Import the Templates that define how apps are deployed (this requires cluster-admin privileges):
$ oc replace --force -n openshift -f https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74-beta/templates/eap74-beta-basic-s2i.json
- Create the app from the template:
$ oc new-app --template=eap74-beta-basic-s2i -p APPLICATION_NAME=eap-demo \ -p EAP_IMAGE_NAME=jboss-eap74-beta-openjdk11-openshift:7.4.0.Beta \ -p EAP_RUNTIME_IMAGE_NAME=jboss-eap74-beta-openjdk11-runtime-openshift:7.4.0.Beta \ -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts \ -p SOURCE_REPOSITORY_REF=7.4.x \ -p CONTEXT_DIR="helloworld-rs" \ -l app.openshift.io/runtime=jboss
- Two builds will run in succession to build the app. You can check the status of the builds through:
$ oc logs -f bc/eap-demo-build-artifacts && oc logs -f bc/eap-demo
- After both builds complete, watch the rollout with:
$ oc rollout status -w dc/eap-demo
The build and rollout will take some time to finish.
- Once the app is built and deployed, you will be able to see it in the OpenShift Console's Topology view, as shown in Figure 1.
- Access the sample application by clicking on the small arrow to the upper right of the icon. This will display the sample RESTful application and confirm the successful deployment. Congratulations!
JBoss Enterprise Application Platform resources
You can find the JBoss Enterprise Application Platform 7.4 Beta documentation, including release notes, the Getting Started Guide, and several other guides on docs.redhat.com.
Information about the development process for JBoss Enterprise Application Platform 7.4 Beta is available at: