Securing your applications with SSL/HTTPS in WildFly or JBoss EAP is essential for protecting sensitive data and ensuring compliance with modern security standards. In this updated guide, you will learn how to configure HTTPS on WildFly in 2025, using secure TLS protocols and managing certificates with modern tools.
Securing your WildFly or JBoss EAP server with SSL/HTTPS is essential for protecting data and ensuring compliance with security best practices. Using Let’s Encrypt, you can automate the issuance and renewal of SSL certificates for your WildFly applications, removing the hassle of manual certificate management and ensuring your deployments remain secure with valid, up-to-date certificates.
If you are working with WildFly or JBoss EAP in 2025, managing system properties and application configurations effectively is essential for containerized deployments, CI/CD pipelines, and cloud-native workloads. Whether you need to inject environment-specific variables, manage secret values, or configure tuning parameters, understanding how to set and load properties in WildFly ensures your applications remain portable, maintainable, and aligned with modern DevOps practices. This updated guide shows multiple methods to inject system properties into WildFly, including CLI commands, standalone.xml edits, and environment variable approaches suitable for Kubernetes and OpenShift deployments.
In modern WildFly and JBoss EAP versions, transaction timeout management remains an essential part of tuning enterprise applications to handle long-running operations gracefully. While the default timeout of 300 seconds works for most scenarios, microservices, cloud-native deployments, and Jakarta EE applications often require fine-tuned transaction settings to align with modern distributed architectures. Adjusting transaction timeouts can help prevent unnecessary rollbacks, optimize resource usage, and avoid stuck threads in high-load environments.
This tutorial contains some examples of how to configure the file jboss-deployment-structure.xml . This file allows to fine tune the modules of your applications running on WildFly. The advantage of using this file (compared to the Manifest’s entry) is that you can define dependencies across top-level deployments and subdeployments.
This guide contains some tips to teach you how to start, stop, restart WildFly application server. By the end of this tutorial, you will be able to effectively manage the lifecycle of your Wildfly server as needed. Besides, we provide some troubleshooting tips to verify why the start or restart does not work.
This tutorial discusses the recommended JDK versions to be used for WildFly and JBoss Enterprise Application Platform (EAP) and how to set the Java version for it. The article is updated to July 2025 and we will keep it in sync with new server versions as thei are available.
Upgrading a WildFly or JBoss EAP manually can be error-prone and time-consuming. Fortunately, the JBoss Server Migration Tool helps automate this process by transferring relevant configuration and deployments from one WildFly version to another.
When building high-performance Java applications on WildFly, one often-overlooked bottleneck is logging. Logging operations, especially those involving I/O (e.g., writing to disk), can slow down your application’s main processing threads. This is where the Async Handler in WildFly’s logging subsystem comes into play.
This updated article will teach you how to find the version of WildFly or JBoss EAP that you are running. As we will see in a minute, there are multiple ways to find it. However, not all might be available in your scenario. Therefore, it’s good to know all the options you have.
WildFly application server ships with a default in-Memory Database, the H2 DB. In this short article we will learn how to remove the H2 Database from WildFly / JBoss configuration correctly.
To ensure reliable operation of Microservices it is essential to monitor Key system and application parameters. By using Microprofile Metrics you can gather this information through a set of well-known endpoints. Let’s see how to use it with WildFly application Server.
This article we will learn how to monitor and invalidate HTTP Sessions in WildFly application server / JBoss EAP using the management instruments such as the Command Line Interface and the Web console. We will also learn how to capture Undertow metrics using the Micrometer metrics component.
WildFly CLI (Command Line Interface) allows you to manage and configure WildFly application server instances. One of its powerful features is expansion expressions, which enable you to work with multiple resources efficiently. In this tutorial we will learn how to perform multiple operation commands using the expansion operator (*) when possible and by iterating over WildFly resources.
This article will teach you how to use a YAML configuration to manage your WildFly deployments tasks. This will help you to include in a YAML idempotent configuration also applications.
This article will teach how you can fetch the underlying Connection from either the java.sql.Connection object or the EntityManager ( for Hibernate and JPA Applications).
In this guide, we’ll walk you through the steps to programmatically obtain the application name and module name of a WildFly application using Java Naming and Directory Interface (JNDI).
This article provides an overview of how to manage your WildFly Domain in a simple and effective way using just the Web Console and the Topolgy view of your Domain.
The WildFly Channels project allows for provisioning custom component versions in a WildFly distribution. In this article, we will learn how to configure a custom WildFly distribution that contains a RestEasy module not yet available in the latest version of the application server.
Message groups in Apache ActiveMQ Artemis allow you to ensure specific sets of messages are processed serially by the same consumer, even in a multi-consumer environment. This tutorial explains the concept and provides examples for sending and receiving messages with groups.
WildFly 32 introduces as an experimental feature, the possibility to print a Banner when the application server is starting up. In this article, we will learn how to customize the banner and how to use a simple Ansible playbook to install a custom banner on every server in your inventory.
This tutorial guides you through configuring a caching realm in Elytron to improve authentication performance for your WildFly applications. By caching user credentials retrieved from a separate security realm (e.g., LDAP), you can significantly reduce the load on your identity store and enhance application responsiveness.
This article will teach you which are the strategies to configure a maximum size of your logs in WildFly by using some of the available Log handlers. We will learn how to define the maximum log size both with the Command Line and the XML configuration.
In this tutorial, we’ll walk through the process of deploying a WildFly datasource XML file as part of your Java EE application. WildFly, formerly known as JBoss AS (Application Server), is a popular open-source application server developed by Red Hat. A datasource XML file contains configuration details for database connections, such as database URL, username, password, and driver class.
In the ever-evolving landscape of application provisioning, WildFly project introduces a groundbreaking provisioning tooling: WildFly Glow. An advanced successor to WildFly Galleon, WildFly Glow automatically combines the Galleon Feature-packs and Layers that your application needs! Let’s dive into the features and capabilities of WildFly Glow.
This article will teach you an Admin Tip to check the configuration changes that you have applied to the WildFly Model using the Command Line Interface.
Keeping your WildFly system secure often requires tracing commands sent across the native management interface. In this article we will learn how to enable auditing of CLI commands with WildFly in just a minute.
This article provides a comprehensive comparison of JBoss EAP vs WildFly. Within this article, we will cover the main differences between the two application servers, which are the different support policies and the mapping of one version versus the other. Let’s dive into the heart of WildFly vs JBoss EAP !
This article discusses the causes and the solution for the error “SQLException: This connection has been closed“. that can happen when using a Java Connection to the Database that is no longer active.
Red Hat JBoss Enterprise Application Platform (EAP) 8.0 is now available. The new major release introduces several new features and enhancements to enhance your application development and deployment experience. In this tutorial, we will explore these new features and learn how to leverage them effectively.
This article is a walk though the configuration of an Elytron JAAS security Realm on WildFly application server. We will shortly review how JAAS configuration works and then we will deploy an example application which leverages the JAAS Security Configuration file.
One of the key features of WildFly is its support for environment variables, which allow you to dynamically configure your application server based on the environment in which it is running. In this tutorial, we will go through the steps required to use environment variables in WildFly configuration files like standalone.xml or host.xml.
Java applications often leverage Java Naming and Directory Interface (JNDI) for naming and directory services. However, encountering the “javax.naming.Reference cannot be cast to” error can be a perplexing challenge for developers. This error typically indicates a casting issue when working with JNDI references. In this article, we will explore common causes of this error and provide solutions to help you resolve it effectively.
This article explain which is the default JBoss password available in the installation of WildFly application Server or JBoss EAP.
Welcome to the JBoss Tutorial for Beginners! In this comprehensive guide, we’ll walk you through the fundamental concepts of JBoss, helping you understand the basics and kickstart your journey into the world of Java-based application servers.
In this guide, we’ll explore the steps to persist sessions in a database using WildFly or JBoss EAP. This can be particularly useful in scenarios where you need to distribute sessions across multiple server instances or require persistent storage of session data.
This article will guide you in the resolution of the Error 404 (Page not found) when accessing WildFly Management Console. This is a generic error which can have different causes. In this article we will go step-by-step to find the cause and solve it.
The WildFly application server comes with a powerful Admin Console that provides a user-friendly interface for managing and monitoring server resources. However, in some scenarios, you may want to disable the Admin Console to enhance security. This tutorial guides you through the process of disabling the Admin Console in WildFly or JBoss Enterprise Application Platform (JBoss EAP).
This article will teach you how to create and configure a DataSource with WildFly application server using the Command Line Interface tool. At the end of this article, we will show how to inject and use the Datasource in a sample Java application.
Please note that the information provided here reflects the available options at the time of writing. To access the most current details, we strongly advise consulting Red Hat’s official website through the links provided in this article.
The allowPublicKeyRetrieval option in the MySQL JDBC connector is used to control whether the client is allowed to request the public key of the server during an SSL connection. By default, this option is set to false to enhance security and prevent potential man-in-the-middle attacks. However, in some cases, it may be necessary to set this option to true to enable certain features or compatibility with older applications.
Configuring JDBC connectivity to PostgreSQL over SSL involves a few steps, especially when setting up SSL validation or opting for a non-validating SSL connection. Below is a tutorial demonstrating both options.
This is a short article explaining how to migrate your Java applications running with Log4j 1.x to Log4j 2.x with special focus on WildFly / JBoss EAP.
This article will explain how to solve the issue “Handler java.util.logging.ConsoleHandler is not defined” when deploying a Spring Boot Web application on WildFly.
In this tutorial we will learn how to extend WildFly by adding a new subsystem. Although this operation involves several steps, by using the Maven wildfly-subsystem archetype you will get soon up to speed. . Below, I’ve outlined all the steps in a basic tutorial to get you started. Note that this tutorial assumes you have some familiarity with Java and WildFly administration.
Starting WildFly in read-only mode can be useful in situations where you want to restrict modifications to the server’s configuration and deployments while the server is running. Here’s a brief tutorial on how to start WildFly in read-only mode.
Log4j2 is the latest major release of the popular Logging Framework. In this tutorial we will learn how to include Log4j2 configuration file and use it in your deployments running on WildFly.
Simple Logging Facade for Java (SLF4J) is a logging facade that provides a unified interface for various logging frameworks, such as log4j, java.util.logging, and Logback. It allows for the decoupling of the application code from the underlying logging framework, making it easier to change the logging framework without modifying the application code. Here is a small tutorial to discuss the advantages of using SLF4J versus direct logging configuration.
The error message “SLF4J: Failed to load class ‘org.slf4j.impl.StaticLoggerBinder‘” commonly occurs in Java applications when the Simple Logging Facade for Java (SLF4J) framework cannot find an appropriate implementation for the logging system. This error can be frustrating, but it’s relatively straightforward to resolve by adding the necessary SLF4J dependencies to your project. In this tutorial, we’ll walk you through the steps to fix this error.
Ensuring the security of JMS destinations is key to protect sensitive data and prevent unauthorized access. In this article, we will explore how to secure JMS destinations with roles in the WildFly application server.
In some scenarios, typically container applications, it is quite common to hit the error “WFLYCTL0348: Timeout after [300] seconds waiting for service container stability“. This article will guide through the steps to find the root cause and solve the issue.
The HTTP Session size in cluster is a key metric to determine how much an application can scale. In this updated tutorial we will learn how to monitor and calculate the current HTTP Session size and the number of HTTP active sessions.
WildFly 28 includes support for YAML configuration which is offers a more flexible approach in some use cases. In this tutorial we will discuss which are the best scenarios where YAML configuration is a perfect fit and how to configure WildFly to use YAML files
In this short article we will learn how to solve a common error which you can hit at deployment time: “failed to start service jboss.deployment.unit”.
In this article we will discuss how to use WildFly Maven plugin to automate the redeployment of applications on WildFly when you apply some changes to the application class files.
This article shows how to enable logs compression in WildFly by setting the appropriate suffix in your Periodic Rotating File Handler. In the second part of this tutorial we will learn how to compress logs using Log4j instead.
In this tutorial, we will discuss how to use Simple Logging Facade for Java (SLF4J) with Wildfly application server. SLF4J is a logging facade that provides a unified interface for various logging frameworks, such as log4j, java.util.logging, and Logback. It allows for the decoupling of the application code from the underlying logging framework, making it easier to change the logging framework without modifying the application code.
In this short article we will learn how to rollback WildFly Command Line commands after their execution in order to restore the original XML configuration.
This article is a quick walkthough the JDBC_PING JGroups protocol which you can use for initial discovery of cluster nodes in WildFly application server.
This article covers how to define a Datasource resource programmatically using the DataSourceDefinition annotation. Then, we will show to to use the Datasource to connect to a Relational Database and execute SQL Statements.
This quick tutorial discusses how to fix the error “Duplicate resource” which you can find at start up or upon deployment of a resource on WildFly.
In this quick article we will learn an handy option which is available in MySQL JDBC Driver to debug and profile SQL statements run by Java applications.
This short article will teach you how to deploy a Web application on top of WildFly / JBoss application server.
This short article will teach you how to change the Web Context Path for applications running on WildFly or JBoss EAP application server
This security bulletin discusses the recent flaws in Log4j2 library which affects some recent versions of this opensource library. Let’s see how to perform checks and mitigation actions if your Java applications are using a flawed Log4j2 version.
This article will teach you how to configure the Periodic File Handler in WildFly. We will also go through some common settings and advanced options such as compressing and rotating the logs file.
A JDBC Driver is able to call standard SQL statements into the vendor-specific database protocol. In this tutorial we will learn how to download and install a JDBC Driver on WildFly / JBoss EAP 7.
H2 Console in versions between 1.1.100 and 2.0.204 is vulnerable as it allows loading of custom classes from remote servers through JNDI, like the Log4Shell vulnerability. Let’s see in detail the issue and how this can affect our environment.
JBoss Modular Service Container (JBoss MSC) is a lightweight highly concurrent DI container for Java. It is used as foundation for the application server (JBoss EAP / WildFly). In this short article we will learn what are the basic setting that affect the configuration of JBoss MSC,
This tutorial will teach you how to change the default log level in WildFly using the management instruments available
In this article we will discuss how to troubleshoot WildFly security issues by enabling the right Loggers or System Properties.
As you start deploying applications, you will see that the folders “data”, “log” and “tmp” start growing. In this tutorial we will learn how to manage the storage of the application server and which files or folders are safe to be deleted.