Course Outline
Tomcat Overview
- Brief introduction to Apache
- The Apache Software Foundation
- The Jakarta Project
- Tomcat licensing details
- J2EE Technologies
- Java Web Development
- Servlet/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
- Process for downloading and installing Apache Tomcat
- Installing a JVM, Tomcat, and Ant
- Using the Windows installer
- Java memory management and JVM optimization for performance
Tomcat Directories
- Overview of installation paths, directory structure, the bin directory, and common/shared directories
- Details on the conf, logs, server, work, temp, and webapps directories
- Analysis of the Web Application Directory Structure
- Deployment of HTML and JSP pages and the Web Context
- JSP Pages and generated code
- Deploying a Web Application
ConfiguringTomcat
- Techniques for configuring Tomcat
- Tomcat's Component Architecture
- Explanation of the <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager> elements
- The Server.xml file
- Modifying the server.xml configuration
Web Applications
- Web Application Administration and Deployment
- Directory structure of a Web Application
- 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 of a web.xml file
- Deployment of a Web Application
- Tomcat's default conf/web.xml file
- Optimizing default JSP and Static-content servlets
Tomcat Manager
- Using the Tomcat Manager for Web Application deployment and management
- Starting and exploring the Tomcat Manager interface
- Overview of the Manager section
- Managing Applications, Deployment, and Server Information
- Creating WAR Files
- Lab 4: Deploying a WAR File
- Java Management Extensions (JMX) in Tomcat
- Integrating Tomcat with Ant
Advanced Features
- Utilizing advanced Tomcat capabilities
- Valves, including Access Log and Single Sign-on
- Remote Address and Remote Host Filters
- Request Dumper Valve
- Configuration of JNDI Resources
- JNDI: Java Naming and Directory Interface, and defining JNDI resources
- The <environment></environment> element and the <resource></resource> element
- Setting up a JavaMail Session
- Global Resources
JDBC Connectivity
- Configuring Tomcat for database connectivity
- JDBC Overview
- JDBC Drivers
- Database connections 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, including manual definition
- Modifying the Deployment Descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security considerations and configuration in Tomcat
- Key security considerations
- File System Security and filesystem best practices
- 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
- Reviewing different Realm types and configuring a Realm
- Users and Roles (authentication and authorization)
- Creating a Data Source Realm
- Password protection mechanisms
- FORM-based authentication
- Configuring Tomcat for SSL
- Enforcing SSL requirements in applications
Connecting
- Connecting Tomcat to Apache
- Reviewing 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 through sticky sessions
- Shared session storage
- Replicated sessions via Tomcat clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Configuring Tomcat for virtual hosting as a standalone server
- Configuring Tomcat for virtual hosting using jk2 or webapp.
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Assigning a separate JVM for each Host
Load Testing
- JMeter Application
- Conducting Load Testing with JMeter
- Installing and running JMeter
- Creating a Test Plan
- Configuring the Thread Group and adding tasks
- Setting up the HTTP Request
- Adding a Report Listener
- Executing the Test Plan
- Analyzing the Results
Requirements
This course is tailored for web and application server administrators who require the skills to install, configure, operate, and optimize the Apache Tomcat Application Server.
To derive maximum value from this Tomcat training, a foundational understanding of web and application server administration principles is recommended.
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.