Zaufali Nam

  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam

Kod Szkolenia: J/WEB2

Tytuł Szkolenia: Nowoczesne aplikacje internetowe oparte na Seam, JSF, EJB3, JPA, AJAX

                                                                                      Pobierz jako PDF Programowanie w języku Java

 

Karta Szkolenia

 

Adresaci szkolenia:

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. Nauczą się projektować i implementować warstwę logiki biznesowej w oparciu EJB 3.0, w połączeniu z mechanizmem mapowania relacyjno-obiektowego JPA (Hibernate). Poznają framework Seam, obecnie jeden z najpopularniejszych frameworków, adresujących aplikacje oparte na JPA EJB i JSF. Dowiedzą się jak Seam przyspiesza prace nad tworzeniem aplikacji WWW, jak rozwiązuje typowe problemy aplikacji WWW, jak poprawia ergonomie i wydajność aplikacji, z jakimi technologiami integruje się Seam jaka wartość do aplikacji mogą one wnieść.

 

 

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).

 

Mocne strony szkolenia:

Program obejmuje całościowo i wyczerpująco zagadnienia tworzenia aplikacji internetowych.

W przeciwieństwie do większości szkoleń, szkolenie to nie koncentruje się na jednej technologii, lecz zawiera najważniejsze zagadnienia z wybranych technologii. Dzięki temu, uczestnicy po skończeniu szkolenia, będą mogli tworzyć samodzielnie kompletne aplikacje WWW, uzupełniając już we własnym zakresie wiedzę o pojawiające się nowe potrzeby.

Program jest ciągle uaktualniany, tak, by uwzględniać nowo powstające trendy.

 

Parametry szkolenia:

5*7 godzin wykładów i warsztatów w proporcji 1/3. W trakcie warsztatów, oprócz prostych ćwiczeń, projektowana i implementowana jest prosta kompleksowa aplikacja.

Wielkość grupy: maks. 8-10 osób.

 

Polecane szkolenia poprzedzające:

J /Web1, J/JP

Szczegółowy Program

Program Szkolenia:

1. 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.

2. Warstwa logiki biznesowej – komponenty EJB

• Komponenty EJB 3.0 – rodzaje i zasada działania:

i. Zasada działania

ii. Rodzaje komponentów

• Komponenty sesyjne:

i. Stanowe

ii. Bezstanowe

iii. cykl życia i nasłuchiwanie cyklu życia

iv. Dostęp lokalny i zdalny,

• Inversion of Control w odwoływaniu do zasobów

• Interceptory

• Model wyjątków

• Komponenty Sterowane Wiadomością:

i. Zasada działania

ii. Rodzaje komunikacji

iii. 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

i. Podstawy webservice

ii. JAX-WS a EJB

3. Java Persistence API (przy użyciu Hibernate):

• Mapowanie relacyjno-obiektowe

• Klasy Encyjne

i. klasy proste

ii. klasy zagnieżdżone

iii. Zmiana domyślnych mapowań

• Asocjacje – z uwzględnieniem krotności i kierunkowości

• Klucze

i. Proste

ii. Złożone

iii. Automatyczne generowanie kluczy

• Kontekst trwałości (PersistentContext):

i. Zarządzany przez kontener i zarządzany przez aplikację

ii. 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”

4. Interfejs Webowy

• Wprowadzenie do JSF

i. Typowe problemy aplikacji Webowej

ii. Wprowadzenie do modelu komponentowo-zdarzeniowego

• Cykl przetwarzania żądania

• Fazy cyklu

• Zagadnienia obejmujące kilka faz

• Komponentowy model interfejsu

• Model konwersji

i. Konwertery wbudowane

ii. Tworzenie konwerterów

• Model walidacji

i. Walidatory wbudowane

ii. 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

i. Podstawy JSP

ii. Biblioteka HTML

iii. Biblioteka Core

• JSF w oparciu o facelets

i. Korzyści wynikające z technologii

ii. Instalacja i konfiguracja

iii. Mechanizmy templatowania

iv. Tagi wbudowane

v. Tworzenie własnych Tagów

• Typowe problemy przy tworzeniu interfejsu min

i. Formularz w postaci tabelki

ii. „Inteligentna” paginacja

iii. Master-Detail, LOV

• Tworzenie własnych komponentów

i. Tworzenie komponentów

ii. Tworzenie rendererów

iii. Tworzenie Tagów

• Testowanie interfejsu zbudowanego na JSF

5. 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

i. Ajax4JSF

ii. Wady i zalety podejścia

iii. Architektura silnika – zasada działania

iv. Przegląd możliwości

v. Zagadnienia związane z wydajnością (kolejkowanie, opóźnianie, unieważnianie żądań, zmniejszanie wielkości żądania)

vi. Wpływanie na cykl życia JSF

vii. Ajax4JSF a JSON

• Richfaces

i. Przegląd możliwości Richfaces

ii. Konfiguracja wyglądu (skórki)

iii. Walidacja

iv. RF a jquery, script.aculo.us

6. Przegląd innych bibliotek JSF

• IceFaces

• myFaces

• Tomahawk

• Woodstock

• I inne

7. Seam

• Wstęp do Seam

i. Zadania Seam

ii. Architektura aplikacji opartych na Seam

• Model komponentowy Seam

i. Komponenty Seam

1. typy

2. sposoby definiowania

3. role

4. cykl życia

5. przegląd komponentów wbudowanych

ii. Konteksty Seam

1. rodzaje kontekstów

2. dostęp do kontekstów a współbieżność

3. komunikacja między-kontekstowa

iii. Bijekcja

iv. Metody fabrykujące i zarządzające

• Praca z projektem

i. Generacja szkieletu aplikacji – Scaffolding

ii. Narzędzia wspierające implementacje w Seam w tym JBOSS Tools/ Redhat developer studio

iii. Debugowanie aplikacji Seam

Seam jako framework MVC do tworzenia aplikacji internetowych

i. Model nawigacji

1. pages.xml

2. jPDL pageflow

3. nawigacja a MVC

a. pull-MVC vs push-MVC,

b. akcje

ii. Seam a REST

 iii. Obsługa wyjątków

1. antotacje

2. pages.xml

3. wyjątki a transakcje

iv. Konwersja i Walidacja

1. Komponenty Seam jako konwertery i walidatory JSF

2. Hibernate Validators a walidacja

3. Dekoracje i ajax4jsf

v. Internacjonalizacja i Personalizacja Aplikacji

1. Lokalizacja

2. Strefy czasowe

3. Skiny

vi. Konwersacje

1. Cykl życia konwersacji

2. Propagacja konwersacji

3. Workspace i BreadCrumb

4. Konwersacje z SFSB i optymalizacja styku aplikacja -> baza danych

vii. Seam application framework

viii. Zarządzanie transakcjami i trwałością przez Seam

ix. Interfejs oparty o Gogle Web Toolkit (GWT)

Seam a intergracja

i. integracja z silnikiem procesów biznesowych jBPM

ii. integracja z silnikiem reguł Drools

iii. integracja ze Spring

iv. iText/PDF

v. Email

• Przegląd annotacji i komponentów Seam

• Metody asynchroniczne i JMS

• Zagadnienia wdrażania

i. Konfiguracja i pakowanie aplikacji

ii. Model bezpieczeństwa

• Testowanie Aplikacji Seam

i. Testy jednostkowe ii. Testy integracyjne

• Zagadnienia wydajności

i. Cache JPA

ii. 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