Course Outline
Introduction to Tomcat
- A brief overview of Apache
- The Apache Software Foundation
- The Jakarta Project
- Tomcat Licensing details
- J2EE Technologies
- Java Web Development concepts
- Servlet and JSP Containers
Java Web Applications
- Fundamentals of Servlets
- Benefits of Servlets and their lifecycle
- JavaServer Pages (JSP)
- Integration of JSP with JavaBeans and Tag Libraries
- Introduction to MVC frameworks
Tomcat Installation
- Steps to download and install Apache Tomcat
- Installing the JVM, Tomcat, and Ant
- Using the Windows installer
- Managing Java memory and tuning the JVM for optimal performance
Tomcat Directory Structure
- Overview of installation directories, including the bin, common, and shared folders
- Detailed look at the conf, logs, server, work, temp, and webapps directories
- Understanding the web application directory hierarchy
- Deploying HTML, JSP pages, and web contexts
- How JSP pages are compiled into generated code
- The process of deploying a web application
Tomcat Configuration
- Configuring Tomcat and exploring key techniques
- Tomcat’s component-based architecture
- Explaining core elements: <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager>
- The role of the server.xml file
- Modifying server.xml settings
Web Application Management
- Administrating and deploying web applications
- Standard directory structure for web apps
- Working with the web.xml configuration file
- Understanding 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
- Reviewing a sample web.xml file
- Deployment procedures
- The default conf/web.xml file in Tomcat
- Tuning default JSP and static content servlets
Tomcat Manager
- Using the Tomcat Manager to deploy and manage applications
- Accessing and exploring the Tomcat Manager interface
- Reviewing the Manager section components
- Managing Applications, Deployment, and Server Information
- Creating WAR files
- Practical Lab: Deploying a WAR file
- Java Management Extensions (JMX) in Tomcat
- Integrating Tomcat with Ant
Advanced Tomcat Features
- Utilizing advanced Tomcat capabilities
- Configuring Valves, including Access Log and Single Sign-on Valves
- Using Remote Address and Remote Host Filters
- The Request Dumper Valve
- Setting up JNDI Resources
- Understanding Java Naming and Directory Interface (JNDI) and defining resources
- The <environment></environment> and <resource></resource> elements
- Configuring JavaMail Sessions
- Managing Global Resources
JDBC Connectivity
- Configuring Tomcat for database connectivity
- An overview of JDBC
- Working with JDBC Drivers
- Database connections and connection pooling
- Downloading and installing MySQL
- Configuring MySQL for use with Tomcat
- Creating a database in MySQL
- Downloading and deploying JDBC drivers
- Defining Data Sources in Tomcat, both programmatically and manually
- Updating the Deployment Descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security configurations and considerations for Tomcat
- Key security concerns
- File system security best practices
- Implementing the Java Security Manager
- Granting permissions to Java applications
- Creating and applying custom security policies
- Enabling the Java Security Manager
- Tips for Security Manager usage and Security Realms
- Different types of Realms and configuration methods
- Managing Users and Roles for authentication and authorization
- Creating a Data Source Realm
- Protecting passwords
- Implementing FORM-based authentication
- Setting up Tomcat for SSL
- Enforcing SSL within applications
Integration and Connectivity
- Connecting Tomcat with Apache
- Understanding Connectors
- Configuring HTTP Connectors
- Benefits of using a web server
- Connector protocols
- Setting up an AJP Connector
- Downloading mod_jk
- Creating the mod_jk.conf file
- Starting Tomcat
- Creating a Worker
- Configuring httpd.conf
- Testing the integration setup
- Load balancing across multiple Tomcat instances
- Common load balancing challenges
- Managing server affinity with sticky sessions
- Shared session storage
- Replicating sessions through Tomcat clustering
- Shared Hosting concepts
- Tomcat Virtual Hosting
- Configuring Tomcat for standalone virtual hosting
- Enabling virtual hosting via jk2 or webapp
- Standalone Tomcat configuration
- Configuring Tomcat with AJP
- Using separate JVMs for each host
Load Testing
- Introduction to the JMeter Application
- Conducting load tests with JMeter
- Installing and running JMeter
- Creating a Test Plan
- Configuring the Thread Group and adding tasks
- Setting up HTTP Requests
- Adding a Report Listener
- Executing the Test Plan
- Analyzing test results
Requirements
This course is tailored for web and application server administrators who require the skills to install, configure, operate, and fine-tune the Apache Tomcat Application Server.
To derive maximum value from this Tomcat training, candidates 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.