Apache Tomcat and Java EE Administration Training Course

Primary tabs

Duration Duration

21 hours (usually 3 days including breaks)

Requirements Requirements

None

Overview Overview

Teaches attendees the fundamentals of administering Apache Tomcat and other Java EE environments.

The course is a mixture of lectures and hands-on exercises. Delegates learn by doing, with immediate opportunities to apply the material they learn to real-world problems.

Course Outline Course Outline

Introduction to the Java Platform

  • The JVM, JRE, and JDK
  • Java SE versus EE
  • Apache Tomcat as a lightweight servlet/JSP container, and how this differs from full-blown Java EE application servers such as WebLogic, WebSphere, JBoss, and GlassFish

Architecture of Applications installed to Tomcat

  • Understanding classes versus JARs
  • Servlets
  • JSPs
  • JavaBeans
  • JNDI and datasources
  • Resources that your applications may call on other servers (web services, EJBs, etc.)

Installing Tomcat

  • Installing the Java Runtime Environment (JRE)
  • Tweaking the JRE for performance
  • Performing the actual Tomcat installation

Examining the Tomcat installation directories

  • bin
  • conf
  • lib
  • logs
  • temp
  • webapps
  • work

Configuring Tomcat

  • server.xml (detailed walkthrough)
  • web.xml
  • context.xml

Deploying Java EE Applications

  • Packaging JARs for deployment to Tomcat
  • Packaging WARs for deployment to Tomcat
  • Application server-neutral configuration versus application server-specific configuration
  • Overview of EARs and other archive types not supported by Tomcat, but supported by other Java EE application servers
  • Versioning Java EE applications
  • Managing the deployment of updated applications

Tomcat Valves

  • AccessLog and FastCommonAccessLog
  • RequestFilterValve
  • SingleSignOnValve (by request)
  • RequestDumperValve (by request)

Memory management and JMX monitoring

  • Understanding Java garbage collection
  • Using JAVA_OPTS, JMX and JConsole to monitor and tune Tomcat memory usage
  • Sizing Tomcat's JVM memory heap
  • Using JMX and JConsole to configure Tomcat via Tomcat's MBeans
  • Updating Tomcat's configuration via JMX "on the fly" without restarting Tomcat
  • Load testing with JMeter
  • Using VisualVM (new monitoring tool built into JDK 6) and PSI Probe
  • Controlling JMX MBeans via Ant

Logging and Troubleshooting

  • JULI logging
  • log4j logging
  • Understanding exceptions and thread dumps
  • Troubleshooting errors that occur in Tomcat
  • Troubleshooting errors generated by your deployed applications
  • Troubleshooting strategies applicable to application servers other than tomcat

Connecting databases with Tomcat applications

  • Classic JDBC approach
  • Better approach: JNDI resources
  • Setting up and monitoring database connection pools

Security

  • File system security
  • Java security manager
  • Realms, authentication, and authorization
  • SSL

Java VM and Tomcat Performance tuning strategies

  • Additional JVM tuning tips
  • Enabling parallel garbage collection
  • Building native connectors
  • Disabling/removing unneeded applications
  • Tuning incoming connections and database connection pools
  • Turning off Jasper development mode
  • Precompiling JSPs
  • Preloading servlets
  • Application-specific tuning suggestions
  • Tuning levers available in other application servers

The World Beyond Tomcat: Understanding Java EE Applications

  • Explanation of the Java EE APIs not supported by Tomcat: EJB, JMS, and many others
  • 3rd party application frameworks overview (what they are and what administrators should know): Spring, Struts 1/Struts 2, JSF (including a discussion of ICEfaces, RichFaces, etc.)
  • Data tier frameworks and what administrators should know (Hibernate, JPA, etc.)
  • Features offered by WebLogic, WebSphere, and JBoss that are not found in Tomcat

Tomcat Other Features

  • Memory leak prevention and detection
  • Servlet 3.0, JSP 2.2, and EL 2.2 support (and the practical implications of this for Tomcat admins)
  • Cross-site request forgery prevention (and how to configure)
  • How Tomcat 7's new session management features prevent session fixation attacks
  • Alias support (which allow static content to be stored outside the WAR file)

Running Tomcat behind Apache httpd or IIS [this section would be taught using your web server and connector module of choice]

  • Why run Tomcat behind Apache httpd or IIS?
  • Installing mod_jk (Apache or Tomcat) or mod_proxy_ajp and mod_proxy_balancer (Apache 2.2 or later only)
  • Proxying traffic to Tomcat via AJP
  • Monitoring the status of your web server's connection to Tomcat
  • Load balancing Tomcat via mod_jk or mod_proxy_balancer

Tomcat Clustering

  • Configuring mod_jk (in Apache or IIS) or mod_proxy_balancer (Apache 2.2 or later only) as a load balancer
  • Hardware load balancing as an alternative to software load balancing
  • Sticky sessions
  • Configuring a shared session back-end
  • FileStore/JDBCStore (older approach, generally not recommended)
  • Using the <Cluster> tag
  • Configuring the application to be distributable
  • Setting up and testing failover

Bookings, Prices and Enquiries

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
From 1908PLN
(20)
Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet. More Information

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Remote
1 1908PLN 5230PLN
2 1654PLN 3315PLN
3 1569PLN 2677PLN
4 1527PLN 2358PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories

Related Courses


Upcoming Courses

VenueCourse DateCourse Price [Remote / Classroom]
Łódź, ul. Tatrzańska 11Mon, 2017-10-09 09:005230PLN / 2208PLN
Toruń, ul. Żeglarska 10/14Mon, 2017-10-09 09:005230PLN / 2208PLN
Szczecin, ul. Sienna 9Wed, 2017-10-18 09:005230PLN / 2058PLN
Kielce, ul. Warszawska 19Mon, 2017-10-23 09:005230PLN / 1908PLN
Gliwice ul. Karola Marksa 11 Wed, 2017-10-25 09:005230PLN / 2358PLN

Course Discounts

Course Venue Course Date Course Price [Remote / Classroom]
Administering in Microsoft SQL Server Katowice ul. Opolska 22 Wed, 2017-09-20 09:00 7960PLN / 3040PLN
Programming in ASP.NET MVC 5 Gliwice ul. Karola Marksa 11 Wed, 2017-09-20 09:00 5841PLN / 2673PLN
Prototypowanie interaktywnych makiet - Axure Gdańsk, ul. Powstańców Warszawskich 45 Thu, 2017-09-21 09:00 5445PLN / 2101PLN
Wzorce projektowe w Ruby Katowice ul. Opolska 22 Thu, 2017-09-21 09:00 3465PLN / 2433PLN
Adobe InDesign Poznan, Garbary 100/63 Thu, 2017-09-21 09:00 1881PLN / 1027PLN
Visual Basic for Applications (VBA) in Excel - Advanced Warszawa, ul. Złota 3/11 Mon, 2017-09-25 09:00 3069PLN / 1623PLN
DTP (InDesign, Photoshop, Illustrator, Acrobat) Katowice ul. Opolska 22 Mon, 2017-09-25 09:00 5940PLN / 3730PLN
Programming in C++ Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2017-09-25 09:00 5445PLN / 2815PLN
Creating and managing Web sites Poznan, Garbary 100/63 Mon, 2017-09-25 09:00 5841PLN / 2298PLN
Java Performance Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2017-09-25 09:00 9801PLN / 3000PLN
SQL in Microsoft Access Kraków, ul. Rzemieślnicza 1 Tue, 2017-09-26 09:00 10266PLN / 3911PLN
Visual Basic for Applications (VBA) for Analysts Poznan, Garbary 100/63 Wed, 2017-09-27 09:00 2970PLN / 1590PLN
OCUP2 UML 2.5 Certification - Foundation Exam Preparation Kraków, ul. Rzemieślnicza 1 Wed, 2017-09-27 09:00 6930PLN / 3510PLN
Design Patterns in C# Rzeszów, Plac Wolności 13 Thu, 2017-09-28 09:00 3861PLN / 2331PLN
Adobe InDesign Katowice ul. Opolska 22 Thu, 2017-09-28 09:00 1881PLN / 1327PLN
Tworzenie aplikacji na platformie Android Łódź, ul. Tatrzańska 11 Mon, 2017-10-02 09:00 4455PLN / 3128PLN
Statistical and Econometric Modelling Warszawa, ul. Złota 3/11 Mon, 2017-10-02 09:00 20483PLN / 6807PLN
Effective interpersonal communication with elements of assertiveness Kraków, ul. Rzemieślnicza 1 Tue, 2017-10-03 09:00 5148PLN / 1830PLN
Web Development with Symfony3 Kielce, ul. Warszawska 19 Mon, 2017-10-09 09:00 5554PLN / 2483PLN
Visual Basic for Applications (VBA) in Excel - Introduction to programming Szczecin, ul. Sienna 9 Mon, 2017-10-09 09:00 3564PLN / 1891PLN
Analiza biznesowa i systemowa z użyciem notacji UML - warsztat praktyczny dla PO w metodyce Scrum Łódź, ul. Tatrzańska 11 Tue, 2017-10-10 09:00 7722PLN / 3474PLN
Access Basics Szczecin, ul. Sienna 9 Tue, 2017-10-10 09:00 3465PLN / 1550PLN
MS-40361 Software Development Fundamentals MTA Exam 98-361 Gdynia, ul. Ejsmonda 2 Wed, 2017-10-11 09:00 6138PLN / 2610PLN
PostgreSQL for Administrators Gdynia, ul. Ejsmonda 2 Wed, 2017-10-11 09:00 12326PLN / 4235PLN
UML Analysis and Design Kraków, ul. Rzemieślnicza 1 Wed, 2017-10-11 09:00 8910PLN / 4170PLN
Agile w projektach zdalnych Katowice ul. Opolska 22 Mon, 2017-10-16 09:00 5049PLN / 1962PLN
Programming in C++ Bielsko-Biała, Al. Armii Krajowej 220 Mon, 2017-10-16 09:00 5445PLN / 3565PLN
Programming in C++ Łódź, ul. Tatrzańska 11 Mon, 2017-10-16 09:00 5445PLN / 3315PLN
Nginx Setup, Configuration and Administration Wrocław, ul.Ludwika Rydygiera 2a/22 Wed, 2017-10-18 09:00 6930PLN / 2700PLN
Business Analysis Kraków, ul. Rzemieślnicza 1 Wed, 2017-10-18 09:00 7722PLN / 3774PLN
Programming in C# Wrocław, ul.Ludwika Rydygiera 2a/22 Wed, 2017-10-18 09:00 4851PLN / 1870PLN
Stress management Gdynia, ul. Ejsmonda 2 Wed, 2017-10-18 09:00 5148PLN / 1530PLN
Adobe Premiere Pro Gdynia, ul. Ejsmonda 2 Mon, 2017-10-23 09:00 3960PLN / 2480PLN
Administration of Linux System Gdynia, ul. Ejsmonda 2 Tue, 2017-10-24 09:00 4950PLN / 3225PLN
Effective working with spreadsheet in Excel Warszawa, ul. Złota 3/11 Thu, 2017-10-26 09:00 2475PLN / 1225PLN
Node.js Olsztyn, ul. Kajki 3/1 Thu, 2017-10-26 09:00 3861PLN / 2431PLN
SQL Advanced in MySQL Warszawa, ul. Złota 3/11 Thu, 2017-11-02 09:00 1881PLN / 1141PLN
Java Spring Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2017-11-06 09:00 14414PLN / 5970PLN
Nagios Core Gdańsk, ul. Powstańców Warszawskich 45 Mon, 2017-11-13 09:00 13919PLN / 4968PLN
Data Analysis with Oracle 11g - workshop Gdynia, ul. Ejsmonda 2 Mon, 2017-11-13 09:00 9900PLN / 4664PLN

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients