Course Outline
Tomcat Overview
- Brief introduction to Apache
- The Apache Software Foundation
- The Jakarta Project
- Licensing for Tomcat
- J2EE Technologies
- Java Web Development
- Servlet and JSP Containers
Java Web Applications
- Fundamentals of Servlets
- Benefits of Servlets and their Lifecycle
- JavaServer Pages (JSP)
- JSP, JavaBeans, and Tag Libraries
- MVC frameworks
Installing Tomcat
- Obtaining and installing Apache Tomcat
- Installing a JVM, downloading Tomcat, and installing Ant
- Using the Windows installer
- Java memory management and optimizing the JVM for performance
Tomcat Directories
- Overview of installation directories, general structure, the bin directory, and common/shared directories
- Details on the conf, logs, server, work, temp, and webapps directories
- Understanding the web application directory structure
- Deploying HTML and JSP pages and defining web contexts
- JSP pages and their generated code
- Process of deploying a web application
ConfiguringTomcat
- Approaches to configuring Tomcat and relevant techniques
- Tomcat’s component architecture
- 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
- Administration and deployment of web applications
- 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
- A sample web.xml file example
- Deploying a web application
- Tomcat’s default conf/web.xml file
- Optimizing default JSP and static content servlets
Tomcat Manager
- Deploying and managing web applications via the Tomcat Manager
- Launching and utilizing the Tomcat Manager
- Reviewing the Manager section
- Applications, deployment options, 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
- Leveraging advanced Tomcat capabilities
- Valves, including Access Log and Single Sign-on Valves
- Remote Address and Remote Host Filters
- The Request Dumper Valve
- Configuring JNDI resources
- JNDI (Java Naming and Directory Interface) and defining JNDI resources
- The <environment></environment> and <resource></resource> elements
- Setting up a JavaMail session
- Global resources
JDBC Connectivity
- Configuring Tomcat for database connections
- An overview of JDBC
- 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 and manual data source definition
- Modifying the deployment descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Security considerations and configuration in Tomcat
- Key security factors
- File system security and best practices
- The Java Security Manager
- Granting permissions to Java applications and reviewing Java permissions
- Creating and adding custom policies
- Enabling the Java Security Manager
- Tips for the Security Manager and Security Realms
- Types of Realms 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 in applications
Connecting
- Connecting Tomcat to Apache
- An examination of 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 in load balancing
- Server affinity through sticky sessions
- Shared session storage
- Replicating sessions via Tomcat clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Enabling virtual hosting in Tomcat as a standalone server
- Enabling virtual hosting in Tomcat using jk2 or webapp
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Assigning a separate JVM for each 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
- Reviewing the results
Requirements
This course 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 course, candidates should possess a solid understanding of fundamental web and application server administration concepts.
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.