V této kapitole jsme se seznámili s aplikačním rámcem SiteMesh, který se stará o dekorování a sestavování stránek prezentační vrstvy v závislosti na různých aspektech. V distribuci je dodávána podpora pouze pro sestavování HTML stránek, nicméně rozšíření na jiné typy obsahu je možné.
O výběr příslušných dekorátorů se starají tzv. mapovače. Mapovače vybírají dekorátory nejen na základě URL, ale i parametrů v požadavcích, na základě hodnot uchovávaných v cookies či uživatelských sezeních. Pokud vám nebude stačit standardní sada těchto mapovačů, můžete si jednoduše vytvořit vlastní.
Pro potřeby naší aplikace i dalších projektů jsme vytvořili třídu
ConfigDecoratorMapperForMVCProjects, která
umožňuje kvalitní použití aplikačního rámce SiteMesh v projektech
založených na aplikačním rámci Spring, která v tomto rámci chyběla,
stejně tak jako podpora pro ostatní MVC rámce. Dále
jsme připravili mapovač
SessionDecoratorMapperForSpringSessionLocaleResolver,
který úzce spolupracuje s rámcem Spring při internacionalizaci
aplikace.
Dekorátory jsou běžné JSP stránky obsahující uživatelské značky aplikačního rámce SiteMesh. Tyto značky mají přístup k datům požadované stránky, jimiž jsou ve výsledné stránce nahrazeny. Dekorátory však nemusí být pouze JSP stránky, ale mohou to být i šablony některého z populárních šablonovacích nástrojů FreeMarker a Velocity.
Aplikační rámec SiteMesh je vhodné použít jak v nových aplikacích, tak ho integrovat do aplikací stávajících. Já osobně si prozatím bez tohoto rámce nedovedu představit žádnou JEE aplikaci.