В настоящее время многие компании внедряют решения компании IBM с использованием технологии JEE на сервере приложений IBM Websphere. Задачей этого курса является познакомить слушателей с особенностями использования технологии JEE на сервере Websphere. В качестве инструмента разработки приложений выбран Eclipce. В курсе будут рассмотрены две ключевые технологии спецификации JEE – разработка Java Sevrver Faces (JSF) Facelet модулей для Web контейнера IBM Websphere и технология управления транзакциями в Enterprise Java Beans (EJB) контейнере. Также будут рассмотрены другие современные специфкации, входящие в состав JEE . Особенностью курса является то, что в нем не будут рассматриваться дополнительные библиотеки (PrimeFaces, ADF и другие).
Аудитория: разработчики Java, которые планируют использовать технологию JEE на сервере приложений IBM WebSphere.
Цель курса: по окончании курса слушатели получат полную картину по разработке приложений с помощью среды Eclipse в технологии JEE. Полученные навыки можно будет использовать на других стандартных серверах приложений (Jboss, Weblogic) и в других средах разработки.
При чтении курса строятся примеры приложений с использованием стандартных шаблонов, так же много приводится примеров анти-патернов, которые, к сожалению, встречаются на практике . При чтении курса ведется видеозапись всего того, что происходит на машине лектора, видеозапись сохраняется в виде AVI файлов, которые слушатели забирают по окончанию курса.
1. Конфигурация среды разработки Eclipse, основные компоненты и плагины для работы с IBM Websphere. Конфигурация сервера приложений и подключение сервера Websphera к среде разработки Eclipse в виде сервера разработчика. Конфигурация ресурсов сервера приложений (JAAS, JDBC, JMX).
2. Архитектура Enterprise приложения. Типы модулей, конфигурация библиотек и дескрипторов размещения модулей. Взаимодействие модулей и их зависимости. Идеология «разделяй и властвуй» применительно к Enterprise приложениям.
3. Технология JSF – Facelet. HTML5. 6 Фаз выполнения запроса в Facelet модуле. Компоненты пользовательского интерфейса JSF. AJAX компонента и механизм частичного обновления страниц. Контекст Faces и ExpressionLanguage (EL). Создание композитной страницы на основе JSF шаблона, повторное использование шаблона.
4. Динамическое создание визуальных компонент на странице, связывание событий с бизнес методами, доступ к контексту EL из динамических методов. Навигация между страницами.
5. Сессионные EJB компоненты. Классы синглетоны, инициализация приложения и методы, работающие по расписанию (scheduler). Многопоточность в сессионном синглетоне и асинхронные методы. Вызов бизнес метода из Facelet приложения.
6. Session Ful и Less компоненты. Клиентское видение Session компонент. Инжекция пользовательского интерфейса в Web приложение. Локальные бины. Доступ из методов реализации бина к ресурсам сервера. Сессионный и транзакционные контексты, интерцепторы (ловушки) — обеспечение безопасного вызова методов сессионного бина. Сервис Jtimer — управление расписаниями.
7. Пример приложения для подготовки отчета предприятия с использованием расписания и механизмов XSLT-FO и публикации на web странице.
8. Механизмы JPA-ORM. Использование Wizards Eclipse для быстрой разработки сущностных компонент. Фасадные сессионные компоненты и управление постоянством сущностей (EntityManager и PersistenceContext). Выполнение операций DML в базе данных через механизмы JPA. Язык запросов EJBQL — преимущества и недостатки.
9. Два вида управления транзакциями в контейнере EJB. JDBC драйвер с поддержкой двухфазного коммита. Конфигурация и тонкая настройка драйвера на сервере IBM Websphere.
10.Сервис JMS (Java Message Service) IBM Websphere. Конфигурация фабрик соединения, очередей и топиков. Доступ к очереди из веб приложения и транзакционного контейнера. EJB-MDB (Message Driven Bean) для обработки сообщений, поступающих в очередь.