This training course covers both the unsupported open source JBoss Application Server and the supported platform available from JBoss/RedHat (JBoss Enterprise Application Platform). This class covers both so no matter which type of JBoss environment you have this course is right for you. The JBoss EAP 6 product contains the JBoss Application Server 7.1 product internally which is why there are two different version numbers in the course title. The labs for this course are done in a Linux environment.
The JBoss Application Server is one of the most popular open source Java application servers on the market. This release, JBoss AS 7, is a major release that includes many improvements and changes from the widely adopted JBoss 5 platform. The new release has a completely new structure and management model which is covered in depth in the course.
Differences Between JBoss and Other Application Servers
Wildfly
JBoss Support and Documentation
Summary
Reference
CHAPTER 2. INSTALLING AND RUNNING JBOSS
Installation Prerequisites
Java Version
JBoss Installation
JBoss Installer
Standalone and Domain Mode
Directory Structure
Important 'bin' Commands
JBoss Configuration Profiles
Starting JBoss
Network Binding Behavior
Welcome Page
Standalone Base Directory
Stopping JBoss
Other Common Components
Summary
Reference
CHAPTER 3. JBOSS MANAGEMENT CONSOLE
Approaches to Managing JBoss Configurations
Overview of JBoss Management Console
Accessing Management Console
add-user Command
Console Interface
Deployments
Configuation
Runtime
Summary
CHAPTER 4. JAVA EE APPLICATIONS IN JBOSS
Java EE Components
Java EE Vendor Specifications
Containers
Java EE Blueprint
Java EE Application Structure
EAR File
What are Modules?
Java EE Deployment Descriptors
Web Module
EJB Module
Client Module
JBoss Deployment Descriptors
Code Annotations
JBoss Application Deployment
Deployment Scanner
Deployment Scanner Marker Files
CLI Deployment
Deploying With Management Console
Deployments in Configuration XML
Deployment Overlay
Summary
CHAPTER 5. JBOSS ARCHITECTURE AND CONFIGURATION
JBoss Architecture
Server Extensions
Subsystems
Subsystem Configuration
Variables in Configuration Files
Important System Properties
Interfaces
Controlling Network Binding
Socket Binding
Alternate Configurations
Configuration Snapshots and History
Reloading & Restarting JBoss
JBoss Modules
Use and Benefits of JBoss Modules
Summary
CHAPTER 6. JBOSS CLI SCRIPTING
CLI Overview
Starting CLI
Connecting CLI to a Server
CLI Security
CLI Commands & Operations
CLI Commands
Command History & Autocomplete
JBoss Management Model
Management Model Reference
CLI Navigation
CLI Operations
CLI Read Operations
Adding Resources with CLI
CLI GUI
CLI Configuration
Batch Mode
CLI Archive
Summary
CHAPTER 7. JBOSS LOGGING
JBoss Logging
Logging Components
Log Levels
Loggers
Logger Hierarchy
Logging Code
JBoss Logging Handlers
Formatter
Logging Configuration
Modifying Log Level
Creating Application Logs
Log Viewer in Management Console
HTTP Access Logs
JBoss HTTP Access Log
Summary
CHAPTER 8. CONNECTING TO A DATABASE
What is JDBC?
JDBC Driver
Typical Unmanaged JDBC Use
Problems to Address
Data Source Architecture
JDBC Data Sources
Typical Use of Data Source
JPA and Data Source
JBoss Datasources
H2 Database
Types of JBoss Data Sources
Defining JBoss Datasources
Adding JDBC Drivers
Define Datasource
Optional Datasource Properties
Common Additional Properties
Connection Pool Properties
Validation Properties
Timeout Properties
Deploy Application Using Data Source
Configuring Datasources Subsystem
Configuration in Management Console
Configuration with JBoss CLI
Adding Datasource With CLI
Deployment of *-ds.xml Files
Data Source Failover
Summary
CHAPTER 9. JMS MESSAGING
Messaging Intro
Messaging Example
Messaging Components
Messaging Types
JMS (Java Messaging Service)
JMS Resources
Message Driven Beans (MDB)
HornetQ
Configuring HornetQ
JMS Connection Factories
JMS Destinations
"Match" Syntax
Address Settings
Security Settings
MDB Destinations
Other HornetQ Configuration
Configuration in Management Console
Configuration with JBoss CLI
Summary
CHAPTER 10. JBOSS SECURITY
Security Resources
JBoss Security Overview
Management Interface Security
Default Management Authentication
Other Management Authentication Options
TLS/SSL (Secure Sockets Layer)
Digital Certificates
Creating Self-Signed Certificate
Enable TLS/SSL on JBoss Connections
Enable HTTPS on Web Subsystem
Configure HTTPS on Management Console
Management Role-Based Access Control
Standard RBAC Roles
Enable RBAC
Password Vault
Configuring Password Vault
Summary
CHAPTER 11. JAVA EE SECURITY IN JBOSS
Authentication and Authorization
Challenge Mechanism
Java EE Security Roles
JBoss Security Domain
Login Modules
Common Login Modules
Configuring Security Domains
Default Security Domain
Default EJB Security
UsersRoles Login Module
Using a Database for Authentication
Using an LDAP Server
Chaining Multiple Login Modules
Chaining Multiple Login Modules - Example
Stacking Login Modules
Stacking Login Modules - Example
Hashed Passwords
Testing Security
Summary
CHAPTER 12. WEB SERVICE ADMINISTRATION
What is a Web Service?
SOAP Overview
WSDL Overview
WSDL Syntax Overview
Service Endpoint Definition
Web Service Administration Tasks
REST Web Services
CHAPTER 13. JBOSS WEB SERVICES AND CLIENTS
JBoss Web Service Deployment
Controlling Generated WSDL Address
Routing Web Service Requests
JBoss Web Service Deployment Descriptor
Writing Portable Web Service Clients for JBoss
Using a Packaged WSDL
Managed Web Service Clients
JBoss @WebServiceRef Customization
JBoss Web Service Tools
Advanced JBoss Web Service Features
Summary
Reference
CHAPTER 14. JAVA MEMORY MANAGEMENT
Java Heap Space
Heap Size Limits
Default Size Limits
Garbage Collection Basics
Allocation Failure (AF)
OutOfMemoryError
Memory Leak
Free Space Threshold
Garbage Collection Mechanism
GC Performance Improvements
Generational Garbage Collection
Thread Local Heap (TLH)
Memory Tuning Goals
Steady State Heap Size
Analyzing Steady State Behavior
Effect of Initial Heap Size on GC
Optimizing GC Duration
Summary
CHAPTER 15. JBOSS PERFORMANCE
Monitoring Runtime JBoss Performance
JAVA_OPTS Environment Variable
Subsystem Tuning
Summary
CHAPTER 16. COMPLEX JBOSS ENVIRONMENTS
Considerations for Complex JBoss Environments
Clusters
Clustering Terminology
Horizontal Scaling
Vertical Scaling
Options for Defining Clusters
Load Balancing JBoss Servers
HA Configurations
JGroups
JGroups Configuration
Modifying Server Ports
Running Multiple Instances of JBoss on Single Machine
Summary
CHAPTER 17. JBOSS DOMAIN MODE
Domain Mode Overview
Domain Mode Terminology
Defining a Domain
Elements of domain.xml
Elements of host.xml
Authentication of Host Controllers
Steps to Establish a Domain Controller
Steps to Establish a Host Controller
Server Group
Changes to Management Console
Changes to CLI
Application Deployment in a Domain
Domain Controller Failure
Domain Controller Disaster Recovery
Summary
CHAPTER 18. JBOSS WEB SERVER INTEGRATION
Role of Web Server
Virtual Hosts
Virtual Host Root Context
Supported Web Servers
Apache httpd
mod_cluster Overview
Red Hat JBoss Web Server
Configuring mod_cluster
JBoss Configuration
Sticky Sessions
mod_cluster_manager Application
SSL For mod_cluster and JBoss
Summary
CHAPTER 19. DISTRIBUTED APPLICATIONS
Application State
Distributed Failover
HTTP Session State Replication
Utilizing Session Replication
Session Timeout
Clustered Session EJBs
Clustering Stateless Session Beans (EJB 3.x)
Clustering Stateful Session Beans (EJB 3.x)
Summary
LAB EXERCISES
Lab 1. Install Java
Lab 2. JBoss Application Server Installation
Lab 3. Configure and Explore Management Console
Lab 4. Deploy Applications to JBoss
Lab 5. Explore Configuration
Lab 6. Work With JBoss CLI (Scripting)
Lab 7. JBoss Logging
Lab 8. Connect to External Database
Lab 9. Manage JBoss Messaging
Lab 10. Configure JBoss Security
Lab 11. Application Security (Optional)
Lab 12. Web Services (Optional)
Lab 13. JBoss Performance Monitoring (Optional)
Lab 14. Run Multiple JBoss Servers
Lab 15. Establish JBoss Domain
Lab 16. Configure mod_cluster Load Balancing
Lab 17. Modify Applications to Support Clustering
Audience
Webmasters and System Administrators who install, configure, and maintain Java EE Applications on JBoss Application Server 7 or JBoss EAP 6.
The student should have a familiarity with basic Linux operational skills like running commands from a command prompt and networking. Although not required, familiarity with web-based applications, web servers, and Java is suggested.
Related Courses
Introduction to Angular 2 Programming...
Angular 2 training covers everything you need to know to get started with this n...
College Credit, CEUs, PDUs and CDUs When you take courses with the Babbage Simmel, be sure you get the credit you deserve. Curriculum offered by Babbage Simmel can earn you college credit, CEUs, PDUs or CDUs.
College Credit Select curriculum offered by Babbage Simmel can be utilized for College Credit. For questions please E-Mail: info@babsim.com or call 614-481-4345.
Continuing Education Units (CEUs) Continuing Education Units (CEUs) are nationally recognized standard units of measurement earned for satisfactory completion of qualified programs of continuing education. If you need more information about CEUs, please E-Mail: info@babsim.com or call 614-481-4345.
Professional Development Units (PDUs) Professional Development Units (PDUs) can be issued by PMI® for formal learning activities related to project management. Project Management Professionals (PMPs®) are required to earn a minimum of 60 PDUs every 3 years to maintain certification. For more information about this program go to the PMI® web site or call 1-855 746 4849.
Continuing Development Units (CDUs) CDUs may be earned by attending professional development (e.g. courses, seminars) offered by organizations endorsed by IIBA® and designated as an EEP vendor. As an IIBA Endorsed Education Provider (EEP) Babbage Simmel's IIBA® endorsed courses qualify for CDU credit. For more information about CDUs go the IIBA® web site or call 1-647-426-3735.
Our babsimLIVE distance learning brings the classroom learning experience to you by seating you virtually into a real-life instructor-led classroom taught by award winning world-class instructors with other IT professionals like yourself. From the comfort of your home, workplace, or at the Babbage Simmel Columbus Campus, you acquire the training you need, when you want it, in the environment that is most comfortable for you to be successful.