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 fundamentals
- Servlet and JSP containers
Java Web Applications
- Overview of Servlets
- Benefits of Servlets and their lifecycle
- Introduction to JavaServer Pages
- JSP, JavaBeans, and JSP Tag Libraries
- MVC frameworks
Tomcat Installation
- Downloading and installing Apache Tomcat
- Acquiring a JVM, downloading Tomcat, and installing Ant
- Using the Windows installer
- Java memory management and JVM tuning for performance
Tomcat Directory Structure
- Overview of Tomcat installation directories, structure, the bin directory, and common/shared directories
- Detailed look at the conf, logs, server, work, temp, and webapps directories
- Structure of the web application directory
- Deploying HTML and JSP pages and web contexts
- JSP pages and generated code
- Deploying web applications
Configuring Tomcat
- Tomcat configuration techniques
- Tomcat component architecture
- Key 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 layout 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
- 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 the Tomcat Manager
- Launching and exploring the Tomcat Manager
- Overview of the Manager section
- 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
- Leveraging advanced Tomcat features
- Valves, including Access Log and Single Sign-on Valves
- Remote Address and Remote Host filters
- Request Dumper Valve
- Configuring JNDI resources
- JNDI: Java Naming and Directory Interface and defining resources
- The <environment></environment> element and the <resource></resource> element
- Configuring JavaMail sessions
- 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 JDBC drivers
- Defining a DataSource in Tomcat and manual setup
- Modifying the deployment descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security considerations and Tomcat configuration
- Security best practices
- Filesystem security and recommendations
- The 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
- Requiring SSL in applications
Integration and Connectivity
- Connecting Tomcat to Apache
- Examining 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 associated with load balancing
- Server affinity using 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 virtual hosting using jk2 or webapp
- Configuring Tomcat as stand-alone
- Configuring Tomcat with AJP
- Dedicated JVM per host
Load Testing
- The JMeter application
- Conducting load tests with 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
- Analyzing 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 gain the most value from this Tomcat training, you should have a solid understanding of fundamental 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.