Course Outline
Tomcat Overview
- A brief introduction to Apache
- The Apache Software Foundation
- The Jakarta Project
- Tomcat licensing models
- J2EE technologies
- Java web development fundamentals
- Servlet and JSP containers
Java Web Applications
- An introduction to Servlets
- Benefits of Servlets and their lifecycle
- JavaServer Pages (JSP)
- JSP, JavaBeans, and JSP Tag Libraries
- MVC frameworks
Installing Tomcat
- Methods for downloading and installing Apache Tomcat
- Installing the JVM, Tomcat, and Ant
- Using the Windows installer
- Java memory management and JVM tuning for performance
Tomcat Directories
- Tomcat installation paths, directory layout, bin directory, and common/shared directories
- conf directory, logs directory, server directory, work directory, temp directory, and webapps directory
- Structure of the web application directory
- Deploying HTML and JSP pages and web contexts
- JSP pages and generated code
- Deployment of web applications
Configuring Tomcat
- Tomcat configuration techniques
- Tomcat’s component architecture
- Understanding elements: <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager>
- The server.xml file
- Modifying server.xml
Web Applications
- Web application administration and deployment
- Directory structure for web apps
- 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
- Example web.xml file
- Deploying web applications
- 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 interface overview
- Manager section analysis
- Applications, Deployment, and Server Information
- Creating a WAR file
- Lab 4: Deploying a WAR File
- Java Management Extensions (JMX) in Tomcat
- Tomcat integration with Ant
Advanced Features
- Leveraging advanced Tomcat features
- Valves: 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 for database connections
- JDBC overview
- JDBC drivers
- Database connectivity and connection pooling
- 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 configuration
- Modifying deployment descriptors
- Detecting and closing leaked database connections
Tomcat Security
- Security configurations in Tomcat
- Security considerations
- File system security and filesystem recommendations
- Java Security Manager
- Granting permissions to Java apps and understanding Java permissions
- Creating and adding custom policies
- Enabling the Java Security Manager
- Security Manager tips and Security Realms
- Types of Realms and realm configuration
- Users and roles (authentication and authorization)
- Creating a Data Source Realm
- Password protection
- FORM-based authentication
- Configuring Tomcat for SSL
- Making SSL mandatory in applications
Connecting
- Connecting Tomcat to Apache
- Connector overview
- 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
- Load balancing challenges
- Server affinity via 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
- Load testing using JMeter
- Installing and running JMeter
- Creating a test plan
- Configuring the Thread Group and adding tasks
- Configuring HTTP requests
- Adding a Report Listener
- Executing the test plan
- Reviewing results
Requirements
This program is tailored for web and application server administrators responsible for installing, configuring, operating, and tuning the Apache Tomcat Application Server.
To maximize the value of this Tomcat training, participants should possess a foundational understanding of web and application server administration principles.
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.