Course Outline
Tomcat Overview
- Brief introduction to Apache
- The Apache Software Foundation
- The Jakarta Project
- Tomcat Licensing
- J2EE Technologies
- Java Web Development
- Servlet/JSP Containers
Java Web Applications
- Introduction to Servlets
- Benefits of Servlets and their Lifecycle
- JavaServer Pages (JSP)
- JSP, JavaBeans, and JSP Tag Libraries
- MVC frameworks
Installing Tomcat
- Downloading and installing Apache Tomcat
- Installing a JVM, Tomcat, and Ant
- Using the Windows installer
- Java memory management and tuning the JVM for optimal performance
Tomcat Directories
- Tomcat installation directories, directory structure, the bin directory, and common/shared directories
- The conf, logs, server, work, temp, and webapps directories
- Understanding the web application directory structure
- Deploying HTML and JSP pages and web contexts
- JSP pages and generated code
- Deploying a web application
ConfiguringTomcat
- Tomcat configuration and an overview of configuration techniques
- Tomcat's component architecture
- The <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager> elements
- The Server.xml file
- Modifying server.xml
Web Applications
- Web application administration and deployment
- Directory structure of a web app
- The web.xml configuration file
- Deployment descriptors
- The <web-app></web-app> element
- Mapping a Servlet to a URL
- 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 using the Tomcat Manager
- Starting the Tomcat Manager and an overview of its interface
- Exploring the Manager section
- Applications, Deployment, 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
- Utilizing 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> and <resource></resource> elements
- Configuring a JavaMail session
- Global resources
JDBC Connectivity
- Configuring Tomcat to connect to a database
- Introduction to JDBC
- JDBC Drivers
- Connecting to a database and managing connection pools
- 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 definition
- Modifying the deployment descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security considerations and configuration for Tomcat
- General security considerations
- File system security and recommendations
- The Java Security Manager
- Granting permissions to Java apps and reviewing Java permissions
- Creating and adding custom policies
- Enabling the Java Security Manager
- Security Manager tips and security realms
- Different 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
Connecting
- Connecting Tomcat to Apache
- Overview of Connectors
- HTTP Connectors
- Advantages 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 via 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
- Enabling virtual hosting in Tomcat using jk2 or webapp
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Separate JVM for Each Host
Load Testing
- The JMeter Application
- Performing 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
- Running 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 fine-tune the Apache Tomcat Application Server.
To maximize the value of this Tomcat training, it is recommended that you have a solid grasp 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.