Práce analyzuje možnosti technologie JavaServer Faces (JSF), frameworku, jenž je vyvíjen od roku 2004 a snaží se usnadnit tvorbu uživatelského rozhraní webových aplikací postavených na platformě Java. O tomto tématu bylo dosud napsáno poměrně málo literatury v češtině. Snažím se tedy koncipovat text tak, aby mohl sloužit také jako výukový materiál a to především těm, kteří se s JSF setkávají poprvé. Mým dalším cílem je zpřístupnit tuto práci také na doprovodných webových stránkách.
Pro plné porozumění obsahu je předpokládaná znalost některých technologií, na kterých je JSF založeno. Jedná se zejména o Java Standard Edition (Java SE) a základní principy Java Enterprise Edition (Java EE). Dále je potřebná znalost technologie JavaServer Pages (JSP) a také značkovacího jazyka Hypertext Markup Language (HTML).
Co se obsahu týče, budou postupně představeny základní principy a možnosti JSF frameworku. Začíná se stručným popisem Java EE platformy. Poté následuje úvod do samotného JSF a napsání první jednoduché aplikace. V dalších kapitolách jsou postupně probrány UI komponenty a jejich renderovací model, konverze a validace dat, události a jejich zpracovávání a nakonec je popsán průběh životního cyklu JSF aplikace. Na konci jednotlivých kapitol naleznete také cvičná zadání, která by měla sloužit k procvičení právě probrané problematiky. K práci jsou přiloženy soubory, ve kterých jsou tyto příklady vypracovány. Pro vypracování ukázkových aplikací bylo využito JSF 1.2, což je v době psaní této práce (říjen 2009) aktuální verze.
K tomu abyste byli schopni vyvíjet a spouštět JSF aplikace, budete potřebovat nějaké softwarové vybavení. Předně je nezbytné mít nainstalován Java Development Kit (JDK). Dále budete potřebovat aplikační server, na kterém budete vaše weby testovat. Můžete využít např. zdarma dostupný GlassFish, jehož verze 2.1 byla využita také v této práci. Pro usnadnění práce se také hodí některé z vývojových prostředí. Mezi nejznámější patrně patří Eclipse, IntelliJ IDEA a NetBeans, v němž jsou vytvořeny ukázkové příklady. Můžete však použít jakýkoliv jiný software. Informace o spolupráci vašeho vývojového prostředí s konkrétním aplikačním serverem hledejte v příslušné dokumentaci.
V textu jsou použity následující konvence:
Důležité poprvé použité termíny nebo pojmy, které chci zvýraznit, jsou vysazeny tučně.
U odborných výrazů z angličtiny se nesnažím o překlad do češtiny, nýbrž používám jejich anglického tvaru. Takovéto výrazy jsou vysazeny kurzívou. Akronymy anglických výrazů (např. JSF, API atd.) však píši standardním fontem.
Názvy tříd a programový kód jsou vysazeny neproporcionálním
písmem
.
URL adresy a názvy souborů jsou vysazeny tučným neproporcionálním písmem
.
Texty zadání příkladů jsou celé vysazeny kurzívou a uvedeny obrázkem.
Výše uvedená pravidla mohou být také kombinována. Např. důležitý odborný výraz z angličtiny bude vysazen tučnou kurzívou. V poznámkách pod čarou se tyto konvence neuplatňují.