Каталог курсов
Курсы
JSF 2.3: технология разработки web-приложений в Java EE 8
Описание курса
Курс "JSF 2.3: технология разработки web-приложений в Java EE 8" состоит из логически связанных модулей, представляющих новую спецификацию JSF 2.3, позволяющие создавать быстрые, динамичные, с поддержкой AJAX, графические интерфейсы пользователя. Задача курса заключается в подготовке разработчиков Web-приложений для компании, а также переподготовке профессиональных разработчиков по новейшей спецификации Java Server Faces 2.3, являющейся стандартом для разработки web интерфейсов для Java EE7 приложений корпоративных систем.
Курс предназначен для разработчиков, уже знакомых с Web-технологиями Java Servlet и Java Server Pages (JSP).
Продвинутый уровень предназначен для разработчиков Web-приложений, нуждающихся в быстром освоении новейших технологических решений (профессиональных разработчиков подразделений R&D и смежных подразделений).
Экспертный уровень – для разработчиков и архитекторов, заинтересованных в быстром освоении специальных технологий, например, построение интерфейса пользователя, развитого в функциональном отношении, на базе JSF компонентов и HTML5.
Перед прослушиванием этого курса рекомендуется изучить курсы:
Java Standard Edition 9 (Java SE9). Язык программирования Java, базовый курс или часть 1;
Java Standard Edition 9 (Java SE9). Язык программирования Java, курс для слушателей, продолжающих изучение Java или часть 2.
После прослушивания данного курса рекомендуется изучить следующие курсы:
EJB 3.2, JPA 2.2 – технология разработки бизнес компонентов в Java EE8;
Разработка Java EE8 Web сервисов: SOAP (JAX-WS 2.2) и REST (JAX-RS 2.1)
При изучении курса используются IDE IntelliJ IDEA и NetBeans.
Программа курса
1. Введение в JSF
JSF как компонентная модель построения GUI для web-приложений.
JSF 2.3 как часть Java EE8, экосистема JSF, http://www.javaserverfaces.org/.
Проект Mojarra, https://javaee.github.io/javaserverfaces-spec/.
Простейшее JSF приложение "Hello, World!".
2. Архитектура JSF приложения
Архитектура Enterprise Java приложения, использующего JSF.
Страницы и компоненты, библиотеки тегов JSF, XML-совместимый код страниц.
Слой представления Facelets.
JSF Expression Language.
Рендеринг JSF страниц.
Конвертеры и Валидаторы.
Навигация в JSF приложении.
Поддержка запросов GET и "bookmarkable" адресов.
Создание композитных компонентов, новые события, view parameters, валидация.
Поддержка AJAX, WebSockets и Server Push.
Поддержка ресурсов – изображений, JavaScript, CSS.
Конфигурирование и размещение JSF приложений.
3. Обзор спецификации JSF 2.3, нововведения JSF 2.2 и JSF 2.3
Нововведения JSF 2.2: HTML5, переход к CDI, поддержка AJAX, управление очередью запросов AJAX, поддержка ресурсов в JSF 2.2, Faces Flow.
Нововведения JSF 2.3 – внедрение ссылок на JSF артефакты через CDI доступ к ним из EL, поддержка WebSockets, поддержка server push на основе Servlet 4.0.
4. JSF страница
Создание JSF страниц.
Управление ресурсами - изображения, JavaScript, CSS.
JSF Expression Language - EL.
Встроенные объекты.
Изучение тегов JSF 2.3.
Композитные компоненты.
Лабораторная работа.
5. Цикл жизни JSF приложения
Шаблон проектирования MVC и JSF.
Faces Servlet.
FacesContext.
Цикл жизни JSF приложения.
Интерфейс PhaseListener.
Флаг Immediate.
Проект FacesTrace (http://sourceforge.net/projects/facestrace/).
6. Managed Beans и CDI Beans
Managed Beans и CDI Beans, переход к CDI.
Примнение CDI с JSF, внедрение ссылок на артефакты, cферы видимости.
Применение Аннотаций, Resources Injection.
Связывание свойств Компонента и связывание Экземпляра компонента.
BeanValidation framework.
Лабораторная работа.
7. Конверсия данных в JSF приложении
Встроенные конвертеры.
Пользовательские конвертеры.
Лабораторная работа.
8. Навигация в JSF приложении
Механизм навигации в JSF приложении.
Написание метода управляющего навигацией.
Определение правил навигации.
Пример приложения.
9. Валидация в JSF приложении
Принципы валидации данных на стороне клиента и сервера.
Встроенные валидаторы.
Пользовательские валидаторы.
Показ ошибок.
10. Система событий в JSF приложении
Система событий в JSF 2.3.
Способы создания слушателей событий.
Создание value-changed и action слушателя.
Регистрация слушателя событий в компоненте.
Пример применения в приложении.
11. Поддержка AJAX в JSF 2.3
Поддержка AJAX в JSF 2.3.
Управление очередью запросов.
12. Поддержка Faces Flow в JSF 2.3
Поддержка Faces Flow в JSF 2.3.
13. Поддержка Server Push в JSF 2.3
Пример поддержки Server Push в JSF 2.3.
14. Локализация JSF приложения
Механизм локализации в JSF приложении.
Регистрация локализованных сообщений.
15. Рендеринг компонентов в JSF и пользовательские компоненты
Понимание рендеринга в JSF.
Создание и применение RenderKit.
Понимание пользовательских компонентов JSF.
Пример разработки пользовательского компонента, шаги, необходимые для создания пользовательского компонента.
Делегирование рендеринга.
Поддержка событий пользовательского компонента.
Создание класса тега компонента и определение тега в библиотеке тегов.
16. Реализации JSF
Проекты PrimeFaces, OpenFaces, RichFaces, IceFaces