Course Outline
Tomcat Overview
- Brief introduction to Apache
- The Apache Software Foundation
- The Jakarta Project
- Licensing terms for Tomcat
- Overview of J2EE technologies
- Fundamentals of Java web development
- Understanding Servlet and JSP containers
Java Web Applications
- Introduction to Servlets
- Benefits of Servlets and their lifecycle
- JavaServer Pages (JSP) overview
- Integration of JSP with JavaBeans and JSP Tag Libraries
- MVC framework concepts
Installing Tomcat
- Process of downloading and installing Apache Tomcat
- Acquiring and setting up a JVM, Tomcat, and Ant
- Using the Windows installer
- Java memory management and JVM tuning for enhanced performance
Tomcat Directories
- Tomcat installation paths, directory structure, the bin directory, and common/shared directories
- Details on the conf, logs, server, work, temp, and webapps directories
- The internal structure of the web application directory
- Deploying HTML and JSP pages and understanding web contexts
- JSP pages and the resulting generated code
- Procedure for deploying a web app
ConfiguringTomcat
- Tomcat configuration methods and techniques
- Overview of Tomcat's component architecture
- Examination of the <Server>, <Service>, <Connector>, <Engine>, <Host>, <Context>, <Realm>, <Valve>, <Listener>, <Loader>, and <Manager> elements
- The server.xml file
- Methods for modifying server.xml
Web Applications
- Administration and deployment of web applications
- Directory layout of a web app
- 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 web.xml file
- Deploying a web application
- The default Tomcat conf/web.xml file
- Tuning default JSP and static content servlets
Tomcat Manager
- Managing and deploying web applications via the Tomcat Manager
- Launching the Tomcat Manager and interface exploration
- Overview of the Manager section
- Applications, deployment tools, and server information
- Creating WAR files
- Lab 4: Deploying a WAR file
- Java Management Extensions (JMX) within Tomcat
- Integrating Tomcat with Ant
Advanced Features
- Utilizing advanced Tomcat capabilities
- Valves, including the Access Log Valve and Single Sign-on Valve
- Remote Address and Remote Host Filters
- The Request Dumper Valve
- Configuration of 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 connectivity
- JDBC overview
- JDBC drivers
- Database connection and connection pooling
- Downloading and installing MySQL
- Configuring MySQL for Tomcat integration
- Creating a database in MySQL
- Downloading and deploying a JDBC driver
- Defining a DataSource in Tomcat and manual data source configuration
- Modifying deployment descriptors
- Detection and closure of leaked database connections
Tomcat Security
- Security configuration and considerations for 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
- Activating the Java Security Manager
- Tips for the Security Manager 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
- Requiring SSL in applications
Connecting
- Connecting Tomcat to Apache
- Overview 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
- Common issues in load balancing
- Server affinity through sticky sessions
- Shared session storage
- Session replication via Tomcat clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Configuring Tomcat for virtual hosting as a stand-alone server
- Configuring Tomcat for virtual hosting using jk2 or webapp.
- Configuring Tomcat as Stand-alone
- Configuring Tomcat with AJP
- Separate JVM for Each Host
Load Testing
- Introduction to the JMeter application
- Conducting load tests with JMeter
- Installation and execution of JMeter
- Developing a Test Plan
- Configuring the Thread Group and adding tasks
- Configuring HTTP Requests
- Adding a Report Listener
- Executing the Test Plan
- Analyzing the results
Requirements
This training is tailored for web and application server administrators responsible for the installation, configuration, operation, and performance optimization of the Apache Tomcat Application Server.
To maximize the value of this Tomcat training, participants should possess a foundational understanding of core 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.