Course Outline
Tomcat Overview
- Brief introduction to Apache
- Overview of the Apache Software Foundation
- Introduction to the Jakarta Project
- Details on Tomcat Licensing
- Review of J2EE Technologies
- Basics of Java Web Development
- Understanding Servlet and JSP Containers
Java Web Applications
- Introduction to Servlets
- Benefits of Servlets and their Lifecycle
- Overview of JavaServer Pages (JSP)
- JSP, JavaBeans, and JSP Tag Libraries
- Introduction to MVC frameworks
Installing Tomcat
- Process of downloading and installing Apache Tomcat
- Installing the JVM, downloading Tomcat, and setting up Ant
- Using the Windows installer
- Managing Java memory and tuning the JVM for optimal performance
Tomcat Directories
- Overview of Tomcat installation directories, general structure, the bin directory, and common/shared directories
- Examination of the conf, logs, server, work, temp, and webapps directories
- Understanding the Web Application Directory Structure
- Deploying HTML and JSP pages and understanding the Web Context
- JSP pages and their generated code
- Deploying a complete Web Application
ConfiguringTomcat
- Techniques for configuring Tomcat
- Tomcat's Component Architecture
- Details on the <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager> Elements
- Analysis of the Server.xml File
- Methods for modifying server.xml
Web Applications
- Administration and deployment of Web Applications
- Directory structure for a Web App
- The web.xml configuration file
- Deployment Descriptors
- The <web-app></web-app> Element
- Mapping Servlets to URLs
- The <resource-ref></resource-ref> Element
- The <env-entry></env-entry> Element
- The <ejb-ref></ejb-ref> Element
- Sample web.xml file analysis
- 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 the Tomcat Manager
- Starting the Tomcat Manager and exploring its interface
- Reviewing the Manager Section
- Applications, Deployment options, and Server Information
- Creating a WAR File
- Lab 4: Deploying a WAR File
- Java Management Extensions (JMX) in Tomcat
- Integrating Tomcat with Ant
Advanced Features
- Leveraging advanced Tomcat features
- Valves, including Access Log Valve and 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 JNDI Resources
- The <environment></environment> Element and the <resource></resource> Element
- Configuring a JavaMail Session
- Global Resources
JDBC Connectivity
- Configuring Tomcat to connect to a database
- Overview of JDBC
- JDBC Drivers
- Database connections and Connection Pools
- Downloading and Installing MySQL
- Configuring MySQL for use with Tomcat
- Creating a Database in MySQL
- Downloading and deploying a JDBC Driver
- Defining a DataSource in Tomcat and manual setup
- Modifying the Deployment Descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security configuration for Tomcat
- Key Security Considerations
- File System Security and best practices
- Java Security Manager
- Granting permissions to Java applications and reviewing Java Permissions
- Creating and adding custom policies
- Enabling the Java Security Manager
- Tips for the Security Manager and Security Realms
- Different types of Realms and realm configuration
- Users and Roles (authentication and authorization)
- Creating a Data Source Realm
- Password protection mechanisms
- FORM-based authentication
- Configuring Tomcat for SSL
- Enforcing SSL within applications
Connecting
- Connecting Tomcat to Apache
- Overview of 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
- Common issues with load balancing
- Server affinity using sticky sessions
- Shared session storage
- Replicated sessions via Tomcat clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Enabling virtual hosting for Tomcat as a stand-alone server
- Enabling virtual hosting using jk2 or webapp.
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Separate JVM for Each Host
Load Testing
- The JMeter Application
- Conducting Load Testing with JMeter
- Installing and running JMeter
- Creating a Test Plan
- Configuring the Thread Group and adding tasks
- Configuring the HTTP Request
- Adding a Report Listener
- Executing the Test Plan
- Reviewing the Results
Requirements
This course is tailored for web and application server administrators who require the skills to install, configure, operate, and tune the Apache Tomcat Application Server.
To maximize the value of this Tomcat training, participants should possess a solid understanding of 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.