| Tytuł: |
Nowoczesne aplikacje internetowe oparte na Seam, JSF, EJB3, JPA, AJAX |
| Kategoria: |
KOMPUTERY I INTERNET /
Programowanie
|
| Metodyka: |
Ćwiczenia
|
| Opis: |
Szkolenie adresowane jest do programistów aplikacji internetowych na platformie JEE, pragnących uzupełnić swoje kwalifikacje o najnowsze technologie, a także dla osób znających język Java i pragnących rozpocząć swoją przygodę z aplikacjami internetowymi od najnowszych technologii.
Cel szkolenia:
Uczestnicy dowiedzą się jak projektować i implementować aplikacje na platformie JEE z wykorzystaniem technologii będących treścią szkolenia. Celem szkolenia jest zdobycie umiejętności tworzenia skalowanych aplikacji, zgodnie z arkanami sztuki: od komponentów biznesowych po wysoce ergonomiczne i funkcjonalne interfejsy wpisujące się w nurt WEB 2.0.
W szczególności:
Uczestnicy szczegółowo poznają technologię prezentacji JSF w oparciu o JSP i facelets, włącznie z tworzeniem własnych walidatorów, konwerterów czy komponentów. Zaznajomią się z popularnymi, bogatymi bibliotekami komponentów, takimi jak RichFaces, IceFaces... |
| Poziom zaawansowania : |
średnio zaawansowany |
| Wielkość grupy: |
8 |
| Program: |
Wstęp Wprowadzenie do platformy Java Enterprise Edition Omówienie komponentów i specyfikacji JEE w tym JNDI, JMS, RMI, Servlet, JSP, EJB, webserwisy, Zagadnienia projektowania aplikacji na platformie JEE, doboru technologii, bezpieczeństwa etc. Warstwa logiki biznesowej – komponenty EJB Komponenty EJB 3.0 – rodzaje i zasada działania: Zasada działania Rodzaje komponentów Komponenty sesyjne: Stanowe Bezstanowe cykl życia i nasłuchiwanie cyklu życia Dostęp lokalny i zdalny, Inversion of Control w odwoływaniu do zasobów Interceptory Model wyjątków Komponenty Sterowane Wiadomością: Zasada działania Rodzaje komunikacji Konfiguracja i deployment Bezpieczeństwo komponentów Transakcje zarządzane przez kontener i aplikację Testowanie komponentów EJB Usługi czasowe (TimerService) Usługi webservice w kontekście EJB Podstawy webservice JAX-WS a EJB Java Persistence API (przy użyciu Hibernate): Mapowanie relacyjno-obiektowe Klasy Encyjne klasy proste klasy zagnieżdżone Zmiana domyślnych mapowań Asocjacje – z uwzględnieniem krotności i kierunkowości Klucze Proste Złożone Automatyczne generowanie kluczy Kontekst trwałości (PersistentContext): Zarządzany przez kontener i zarządzany przez aplikację Transakcyjny(Transaction) i rozszerzony(Extended) cykl życia Operacje utrwalające Tworzenie zapytań w EJB-QL Metody nasłuchiwania cyklu życia Modele i implementacja dziedziczenia, Konfiguracja i deployment Zagadnienia spójności danych, optimistic i pesimistic locking Cache drugiego poziomu (hibernate) Testowanie komponentów wykrozystujących JPA Korzystanie z JPA w warstwie Webowej i aplikacji typu “desktop” Interfejs Webowy Wprowadzenie do JSF Typowe problemy aplikacji Webowej Wprowadzenie do modelu komponentowo-zdarzeniowego Cykl przetwarzania żądania Fazy cyklu Zagadnienia obejmujące kilka faz Komponentowy model interfejsu Model konwersji Konwertery wbudowane Tworzenie konwerterów Model walidacji Walidatory wbudowane Tworzenie walidatorów Model zdarzeń Główne klasy i interfejsy Przegląd dostępnych komponentów standardowych Model zarządzania beanami logiki Expression Language Model nawigacji Główne składowe aplikacji JSF i internacjonalizacja Zarządzanie cyklem żądania JSF w opraciu o JSP Podstawy JSP Biblioteka HTML Biblioteka Core JSF w oparciu o facelets Korzyści wynikające z technologii Instalacja i konfiguracja Mechanizmy templatowania Tagi wbudowane Tworzenie własnych Tagów Typowe problemy przy tworzeniu interfejsu min Formularz w postaci tabelki „Inteligentna” paginacja Master-Detail, LOV Tworzenie własnych komponentów Tworzenie komponentów Tworzenie rendererów Tworzenie Tagów Testowanie interfejsu zbudowanego na JSF Tworzenie aplikacji WWW z użyciem technologii AJAX Koncepcja AJAX i modele komunikacji Przegląd podejść do tworzenia aplikacji AJAX(warstwowe – JSF, klient-serwer – GWT, …) Tworzenie aplikacji AJAX „od zera” (XMLHttpRequest) Podstawy bibliotek Prototype i Jquery w kontekście manipulacji drzewem DOM i komunikacji AJAX Ajax4JSF Wady i zalety podejścia Architektura silnika – zasada działania Przegląd możliwości Zagadnienia związane z wydajnością (kolejkowanie, opóźnianie, unieważnianie żądań, zmniejszanie wielkości żądania) Wpływanie na cykl życia JSF Ajax4JSF a JSON Richfaces Przegląd możliwości Richfaces Konfiguracja wyglądu (skórki) Walidacja RF a jquery, script.aculo.us Przegląd innych bibliotek JSF IceFaces myFaces Tomahawk Woodstock I inne Seam Wstęp do Seam Zadania Seam Architektura aplikacji opartych na Seam Model komponentowy Seam Komponenty Seam typy sposoby definiowania role cykl życia przegląd komponentów wbudowanych Konteksty Seam rodzaje kontekstów dostęp do kontekstów a współbieżność komunikacja między-kontekstowa Bijekcja Metody fabrykujące i zarządzające Praca z projektem Generacja szkieletu aplikacji – Scaffolding Narzędzia wspierające implementacje w Seam w tym JBOSS Tools/ Redhat developer studio Debugowanie aplikacji Seam Seam jako framework MVC do tworzenia aplikacji internetowych Model nawigacji pages.xml jPDL pageflow nawigacja a MVC pull-MVC vs push-MVC akcje Seam a REST Obsługa wyjątków antotacje pages.xml wyjątki a transakcje Konwersja i Walidacja Komponenty Seam jako konwertery i walidatory JSF Hibernate Validators a walidacja Dekoracje i ajax4jsf Internacjonalizacja i Personalizacja Aplikacji Lokalizacja Strefy czasowe Skiny Konwersacje Cykl życia konwersacji Propagacja konwersacji Workspace i BreadCrumb Konwersacje z SFSB i optymalizacja styku aplikacja -> baza danych Seam application framework Zarządzanie transakcjami i trwałością przez Seam Interfejs oparty o Gogle Web Toolkit (GWT) Seam a intergracja integracja z silnikiem procesów biznesowych jBPM integracja z silnikiem reguł Drools integracja ze Spring iText/PDF Email Przegląd annotacji i komponentów Seam Metody asynchroniczne i JMS Zagadnienia wdrażania Konfiguracja i pakowanie aplikacji Model bezpieczeństwa Testowanie Aplikacji Seam Testy jednostkowe ii. Testy integracyjne Zagadnienia wydajności Cache JPA Cache stron Zagadnienia związane z architekturą aplikacji webowej w kontekście Seam (pull-MVC,push-MVC, REST) Narzędzia wspierające implementacje w Seam w tym JBOSS IDE / Redhat developer studio |
| Wymagania: |
Od uczestników szkolenia wymagana jest umiejętność programowania w języku Java (do poznania na kursie J/JP), podstawy relacyjnych baz danych i SQL.
Zalecana jest również umiejętność tworzenia aplikacji webowych w technologiach Servlet/JSP (do poznania na kursie J/WEB1). |
| Świadczenia dodatkowe: |
lunch, napoje |
Miejsce szkolenia:
Warszawa, ul. Wąwozowa 11
Lokalizacja GPS: 21.07074737548828 52.13143328121806
Dojazd:
w zakresie własnym
| Czas trwania szkolenia: |
5 dni |
Oddział firmy:
ul. Wąwozowa 11
02-796 Warszawa
Siedziba główna:
ul. Wąwozowa 11
02-796 Warszawa
Kontakt:
Piotr Garbowski
tel.: 22035600
email: p.garbowski@sages.com.pl