Course Outline
Introduction to Tomcat
- Summary of Apache
- The Apache Software Foundation
- The Jakarta Project
- Tomcat Licensing Terms
- J2EE Technologies
- Java Web Development
- Servlet and JSP Containers
Java Web Applications
- Introduction to Servlets
- Benefits of Servlets and Their Lifecycle
- JavaServer Pages
- JSP, JavaBeans, and JSP Tag Libraries
- MVC Frameworks
Installing Tomcat
- Downloading and Installing Apache Tomcat
- Installing a JVM, Tomcat, and Ant
- Using the Windows Installer
- Java memory management and JVM performance tuning
Tomcat Directory Structure
- Tomcat Installation Folders, Directory Layout, bin Directory, and Shared Directories
- conf, logs, server, work, temp, and webapps Directories
- Structure of the Web Application Folder
- Deploying HTML and JSP Pages and Web Contexts
- JSP Pages and Generated Code
- Deploying a Web Application
Configuring Tomcat
- Tomcat Configuration Techniques
- Tomcat's Component Architecture
- The <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager> Elements
- Server.xml File
- Editing server.xml
Web Applications
- Web Application Administration and Deployment
- Web App Directory Structure
- web.xml Configuration File
- Deployment Descriptors
- The <web-app>/web-app Element
- Mapping a Servlet to a URL
- The <resource-ref>/resource-ref Element
- The <env-entry>/env-entry Element
- The <ejb-ref>/ejb-ref Element
- Sample web.xml File
- Deploying a Web Application
- Tomcat's Default conf/web.xml File
- Tuning Default JSP and Static Content Servlets
Tomcat Manager
- Deploying and Managing Web Applications via Tomcat Manager
- Launching the Tomcat Manager Interface
- Overview of the Manager Section
- Applications, Deploy, and Server Information
- Creating a WAR File
- Lab 4: Deploying a WAR File
- Java Management Extensions (JMX) on Tomcat
- Integrating Tomcat with Ant
Advanced Features
- Utilizing Advanced Tomcat Features
- Valves, Access Log Valve, Single Sign-on Valve
- Remote Address Filter and Remote Host Filter
- Request Dumper Valve
- Configuring JNDI Resources
- JNDI: Java Naming and Directory Interface and Defining a JNDI Resource
- The <environment>/environment Element and The <resource>/resource Element
- Configuring a JavaMail Session
- Global Resources
JDBC Connectivity
- Configuring Tomcat for Database Connections
- JDBC Overview
- JDBC Drivers
- Connecting to a Database and Connection Pools
- Downloading and Installing MySQL
- Configuring MySQL for Tomcat
- Creating a Database in MySQL
- Downloading and Deploying a JDBC Driver
- Defining a DataSource in Tomcat and Manual Data Source Definition
- Modifying the Deployment Descriptor
- Detecting and Closing Leaked Database Connections
Tomcat Security
- Security Configurations in Tomcat
- Security Considerations
- File System Security and Recommendations
- Java Security Manager
- Granting Permissions to Java Applications and Reviewing Java Permissions
- Creating and Adding Custom Policies
- Enabling the Java Security Manager
- Security Manager Tips and Security Realms
- Exploring Different Realm Types and Configuring a Realm
- Users and Roles (Authentication and Authorization)
- Creating a Data Source Realm
- Password Protection
- FORM-based Authentication
- Configuring Tomcat for SSL
- Enforcing SSL in Applications
Integration
- Integrating Tomcat with Apache
- Understanding Connectors
- HTTP Connectors
- Benefits of Using a Web Server
- Connector Protocols
- Configuring an AJP Connector
- Downloading mod_jk
- Creating the mod_jk.conf File
- Starting Tomcat
- Creating a Worker
- Configuring httpd.conf
- Testing the Setup
- Load Balancing Applications Across Multiple Tomcat Instances
- Challenges with Load Balancing
- Server Affinity via Sticky Sessions
- Shared Session Storage
- Replicated Sessions via Tomcat Clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Configuring Tomcat for Virtual Hosting as a Stand-alone Server
- Configuring Tomcat for Virtual Hosting Using jk2 or webapp
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Separate JVM for Each Host
Load Testing
- JMeter Application
- Load Testing with JMeter
- Installing and Running JMeter
- Creating a Test Plan
- Configuring the Thread Group and Adding a Task
- Configuring the HTTP Request
- Adding a Report Listener
- Running the Test Plan
- Viewing Results
Requirements
This course is intended for web and application server administrators responsible for installing, configuring, running, and optimizing the Apache Tomcat Application Server.
To maximize the benefits of this Tomcat training, participants should already understand the fundamental principles of web and application server administration.
Testimonials (6)
Interective and examples.
Paulius Stankevicius - Festo SE & Co. KG
Course - Apache Tomcat Administration
Systematic approach; We have covered the whole process, from installation till creating a clustered environment...
Visnja Begovic - Euronet Services Kft
Course - Apache Tomcat Administration
I like the complexity of the training
Attila Molnar - Euronet Services Kft
Course - Apache Tomcat Administration
The delivery mechanism, being able to attend the training from home.
Chris Gagola - Canada Life Group Services
Course - Apache Tomcat Administration
I generally liked the labs / Exercises.
Deeksha Upadhyay - Canada Life Group Services
Course - Apache Tomcat Administration
Training was very interactive.