Securing Java Web Applications


Administering the WildFly 11/12 and JBoss® EAP 7.1 Application Servers – 4 Days

Course Description

This course provides hands-on and in-depth coverage on configuring and managing WildFly 11/12 and JBoss EAP 7.1 servers. It incorporates new server features and all material is current with the new releases. WildFly 12 is primarily a Java EE 8 technology preview, and also the first release on the new quarterly release cycle. EAP 7.1 is the supported release of the WildFly 11 server.

The course is very hands-on, with brief hands-on mini-labs throughout the material which illustrate a topic and help with retention. It also includes numerous larger hands-on labs to dig deeply into a topic.

This course covers all the important administrative tasks that are required to administer this new version of the server. It starts with basic structure, architecture and installation, and moves on to working with the various management tools and deploying applications. Configuration and management of all the important services and subsystems are covered, as is security, domains, and clustering. All management tools are covered, including direct editing of XML configuration files, using the CLI (Command Line Interface), and using the Web-based Management Console. See the list of Skills Gained and the Detailed Outline for more details.

“Legacy” security, which is still the default configuration, is covered in depth. There is an overview of the new Elytron security subsystem.

The course is focused, informative, and created by experts in the JBoss/WildFly AS. It will demystify the many important capabilities and structure of WildFly 11, and leave you well prepared to install, configure, and manage server installations.

What You Will Learn

  • Understand WildFly architecture and JEE server structure
  • Install and configure the server
  • Understand the structure of both standalone installations and domain-based installations
  • Understand the management model and the XML configuration files
  • Use the management tools including direct editing of XML, using the CLI (Command Line Interface), scripting, and the Web management console
  • Understand deployment types and packaging (JARS, WARS, EARS …), and deploy applications
  • Understand modular classloading in WildFly Server, and how it affects application deployment and dependencies
  • Configure and monitor the Web container
  • Configure important services, including datasources, JNDI, EJB, JMS messaging, and logging
  • Understand and configure WildFly security using the classic (default) security configuration
  • Be familiar with the new Elytron security model
  • Use monitoring tools, and identify areas for tuning
  • Understand and use clustering with WildFly, including including load balancing with the built-in front-end load balancer and Apache httpd and mod_cluster
  • Understand and administer a domain of WildFly servers
  • WF12 Only: Be Familiar with the server’s Java EE 8 capabilities


Session 1: WildFly Introduction and Installation

  • Java EE Overview and Architecture
  • WildFly Server Background and Overview
  • Installing and Starting WildFly Server
  • Server Suspend Mode
  • Working with WildFly Server
  • Documentation Overview

Session 2: Structure and Architecture

  • WildFly Server Directory and File Structure
  • Server Architecture and Configuration
    • Server Config File – Extensions, Subsystems, Schemas, Paths
    • Interfaces and Socket Bindings

Session 3: Configuration and Management – Part 1

  • Overview of Management Options
  • Understanding the Management Model and the XML Config Files
  • Using the CLI (Command Line Interface)
    • Overview
    • Navigating the Management Tree
    • Working with Operations and Commands
    • Creating/Deleting Nodes
  • Using the Management Console

Session 4: Application Deployment

  • Java EE Deployment Archives (JARs, WARs, EARs)
  • Deployment/Undeployment with the CLI and Management Console
  • Deployment Scanner – Auto-Deployment in WildFly Server
  • Marker Files and Auto-deployment

Session 5: Configuration and Management – Part 2

  • JBoss Modules and Modular Classloading
  • Defining a Module
  • Working with Dependencies
  • Server Logging
  • Handlers, Log Levels, Formatters and Pattern Strings
  • Configuring Application Logging
  • Configuring Audit Logging

Session 6: Subsystem Configuration

  • JNDI and Naming Overview
  • Naming Subsystem Overview and Configuration
  • Datasource and JCA Overview
  • Datasource and Driver Configuration (XML, CLI, and Admin Console)
  • Datasource Monitoring, and Tuning
  • Thread Pools – History and Current Configuration
  • Undertow Web Container
    • Undertow Overview
    • Undertow Configuration – listeners and workers (XML and CLI)
    • Host and Filter Configuration
    • HTTP/2 Support
  • The H2 Database and ExampleDS
  • EJB Container/Subsystem (SLSB Pooling, MDB, SFSB Cache, Monitoring)
  • Other Subsystems in Brief (remoting, ee, infinispan)
  • WF12 Only: Using Java EE 8

Session 7: Messaging in WildFly Server

  • Messaging and JMS (Java Message Service) Overview
  • HornetQ Overview
  • Messaging Subsystem Configuration (XML, CLI, and Admin Console)
    • General Configuration
    • Connectors and Acceptors
    • Configuring Connection Factories
    • Configuring Queues and Topics (XML, CLI, and Admin Console)
    • Monitoring and Managing
    • Address and Security Settings

Session 8 : Security

  • WildFly/JEE Security Overview
    • General Requirements
    • “Legacy” Security and Elytron Security
    • Security Domains and Realms
    • RBAC
  • Securing the Management Interfaces
  • Application Security
    • Java EE Security Overview
    • Authentication, Authorization, Identity
    • Linking Applications to a Security Domain
    • Security Info Caching
  • RBAC – Role Based Access Control
  • Resource Security
    • Configuring TLS/SSL/HTTPS
    • Credential Store – Protecting Sensitive Strings
  • [Optional] Overview of Elytron Security Subsystem
    • Overview< and Architecture
    • Configuration Overview
    • Usage Overview

Session 9: Clustering and HTTP Load Balancing

  • Clustering Overview
  • WildFly Server Cluster Overview (including HA Singleton)
  • Cluster Configuration – JGroups
  • Architectures – Load Balancers and Client Interceptors (Proxies)
  • HTTP Load Balancing
    • Built-in load balancer
    • Apache httpd load balancer
    • mod_cluster Overview
    • httpd.conf Configuration
    • Installation Choices
    • modculster Subsystem Configuration
    • Management

Session 10: WildFly Server Domain Mode – A Hands-On Exploration

  • Domain Mode Overview
  • Domain Topology – Domain Controllers, Host Controllers, Server Groups
  • domain.xml – Domain Configuration, Server Groups
  • host.xml – Domain Controller
  • host.xml – Host Controllers, Processes and Server Instances
  • Management – Management Console and CLI
  • Deployment/Undeployment – via Management Console and CLI

Session 11: Tuning and Monitoring

  • Enabling Statistics
  • Web Container (Undertow) Tuning – Statistics, Worker Threads
  • EJB Tuning – Bean Instances, Thread Pools
  • Database Access / Datasources
  • Clustering Communication and Replication
  • Monitoring Runtime Data
  • Java Virtual Machine (JVM) Awareness
    • Heap Size
    • Garbage Collection (GC) Overview and Generational GC

Supported Platforms: WildFly 11/12 and JBoss EAP 7.1 on both Linux and Windows Operating Systems

JBoss is a registered trademark of Red Hat, Inc. in the U.S. and other countries.

Print Friendly, PDF & Email