Serverovou aplikaci zastřešující všechny knihovny, které dle specifikací Java EE platformy zajišťují požadovanou funkcionalitu, označujeme pojmem aplikační server. Tyto knihovny implementují veškerá API obsažená v Java EE. Kromě toho poskytuje aplikační server další klasické služby jako např. administrátorskou konzoli, logování atp. Ze známých implementací Java EE platformy můžeme zmínit např. JBoss od firmy Red Hat či JRun od firmy Adobe Systems. Referenční implementace Sunu je šířena pod hlavičkou projektu GlassFish.
Na aplikační server se nasazují tzv. komponenty, což jsou základní jednotky, ze kterých je složena výsledná aplikace. Komponent existuje několik druhů, z nichž pro nás jsou důležité pouze dva:
Webové komponenty - servlety, JSP soubory a JSF soubory.
Enterprise JavaBeans (EJB) komponenty - javovské třídy, které tvoří logiku aplikace a manipulují s daty (pro více informací o EJB viz [8]).
Existují ještě další typy komponent, ale pouze tyto dvě se nasazují na aplikační server. Ostatní typy běží na klientských strojích, a proto pro nás nejsou v tuto chvíli důležité.
Předtím než může být komponenta spuštěna, musí být přiřazena do tzv. kontejneru.
Java EE server v sobě zahrnuje tzv. kontejnery, které spravují komponenty určitého typu a poskytují jim svou funkcionalitu. Funkcionalita jednotlivých kontejnerů je dána specifikací Java EE. Druhy kontejnerů jsou analogické s druhy komponent. Opět jsou pro nás důležité pouze dva z nich:
Webový kontejner - má na starosti správu webových komponent.
EJB kontejner - má na starosti správu EJB komponent.
Existují celkem čtyři typy kontejnerů, ale pouze tyto dva běží na aplikačním serveru. Ostatní běží na klientských strojích, a proto pro nás nejsou v tuto chvíli důležité. Kooperaci jednotlivých kontejnerů můžete vidět na obrázku 2.1.