SlideShare a Scribd company logo
Ood 2013 copy
О себе

Eugene Fedorenko
adfpractice-fedor.blogspot.com

2
Oracle Application Development Framework (ADF)
 Мощный фреймворк для разработки современных Java EE систем
 Основная идея – максимальная продуктивность разработки при
минимальных усилиях
 Реализует Java EE шаблон Model-View-Controller
 ��редполагает сервисно-ориентированный подход к разработке
 Повторное использование бизнес-сервисов
 Разработка композитных приложений
 Основан на стандартах
 Java EE, SOA, SDO/SCA …
 Основной инструмент разработки в Oracle
 Fusion Applications (CRM, HCM, и т.д.)
 Enterprise Manager
 WebCenter Spaces
 …

Eugene Fedorenko
adfpractice-fedor.blogspot.com

3
Гигантский шаг

Eugene Fedorenko
adfpractice-fedor.blogspot.com

4
Архитектура Oracle ADF

Eugene Fedorenko
adfpractice-fedor.blogspot.com

5
ADF Business Components
 Мощное средство разработки бизнес-модели приложения
 Прозрачное маппирование сущностей реляционной БД на объектноориентированную модель бизнес-компонентов
 Управление соединениями и транзакциями
 Полная поддержка SQL (запросы, DML)
 Управление кэшем
 Контроль целостности, валидация данных, Groovy
 Поддержка Master-Detail
 Постраничные запросы
 Lookup queries (List of Values)
 Легко публикуются как SOAP/REST Web Services

Eugene Fedorenko
adfpractice-fedor.blogspot.com

6
Архитектура Oracle ADF

Eugene Fedorenko
adfpractice-fedor.blogspot.com

7
ADF Model
 ADF Data Controls
 Спецификация JSR-227
 Унифицированный интерфейс
представления бизнес-сервиса
 Скрывает имплементацию от
клиента
 ADF Bindings
 Привязка UI компонентов к Data
Controls
 Слабое связывание представления
с бизнес-моделью
 Полностью декларативный подход
к разработке

Eugene Fedorenko
adfpractice-fedor.blogspot.com

8
Архитектура Oracle ADF

Eugene Fedorenko
adfpractice-fedor.blogspot.com

9
ADF Controller
 Расширение стандартного JSF контроллера
 ADF Task Flows
 Ключевой механизм для создания функционально законченных,
слабо связанных между собой задач реализующих определенный
бизнес-процесс (заведение сделки, открытие контрагента,
выполнение кассовой операции, ..)
 Позволяет модульно разбить приложение на сценарии
реализованные соответствующим Task Flow. Приложение
представляет собой совокупность таких сценариев
 Task Flow состоит из набора страниц/фрагментов страниц, методов,
раутеров, правил навигации
 Может быть помещен в регион WEB-страницы
 Может быть легко преобразован в портлет

Eugene Fedorenko
adfpractice-fedor.blogspot.com

10
ADF Task Flow

Eugene Fedorenko
adfpractice-fedor.blogspot.com

11
Архитектура Oracle ADF

Eugene Fedorenko
adfpractice-fedor.blogspot.com

12
ADF Faces Rich Client
Палитра из более 150 компонентов
Поддержка Ajax
Настраиваемый look and feel
Компоненты Data Visualization Tools (DVT)
 Графики, карты, диаграммы Ганта, сводные
таблицы
 Встроенная поддержка rich технологий
 Drag and Drop
 Диалоговые и всплывающие окна
 Active Data приборные панели.
 Технология Push.
 Поддержка шаблонов и декларативных
компонент





Eugene Fedorenko
adfpractice-fedor.blogspot.com

13
Oracle ADF Mobile
 Hybrid приложения для мобильных устройств
 Поддержка iOS и Android
 Native контейнер устройства
 Доступ к сервисам устройства – камера,
GPS, почта, и т.д.
 Push нотификация
 HTML5/JavaScript интерфейс пользователя
 Более 60 компонентов
 Полная поддержка жестов, анимации
 Те же принципы ADF-разработки
 Строим одно приложение, деплоим на
несколько мобильных платформ

Eugene Fedorenko
adfpractice-fedor.blogspot.com

14
На чем это работает
 Сервера приложений

 Браузеры

Eugene Fedorenko
adfpractice-fedor.blogspot.com

15
Связь с внешними системами
ADF Application

ESB

Portal Application

Task Flow
Task Flow
Task Flow

Web
services

Portlet

Other Application
(Siebel CRM)

IFRAME

Data
Data
Data
Controls

Controls
Controls

Business Components
Model

DB

Eugene Fedorenko
adfpractice-fedor.blogspot.com

Web
services

Web
services

16
Интеграция с Siebel CRM

Siebel

JetB2 Task Flow

Eugene Fedorenko
adfpractice-fedor.blogspot.com

17
Модульность приложения
ADF Application
Core View

Core Model

DealAccProd.jar
DealAccProd.jar
DealAccProd.jar
DealAccProdFlow

DealAccProdModel

Eugene Fedorenko
adfpractice-fedor.blogspot.com

18
О системе JetB2
 JetB2 – автоматизированная банковская система, реализующая
клиент-центричную модель обслуживания
 Web-based приложение, построенное на основе всего стека технологий
Oracle ADF
 Трехуровневая архитектура позволяет распределить нагрузку между
серверами
 Снижение требований к серверу Oracle - используется пул соединений
с сервером БД на сервере приложений
 Поддержка портальных технологий/возможность быть как мастер
системой, так и гостевой
 Модульность и расширяемость
 Единая система авторизации и возможность использования внешнего
каталога аутентификации
 Наличие выделенного сервера отчетности
 JetB2 – это высокотехнологичное решение на основе самых
современных стандартов IT индустрии
Eugene Fedorenko
adfpractice-fedor.blogspot.com

19
Архитектура решения

Eugene Fedorenko
adfpractice-fedor.blogspot.com

20
Demo

Eugene Fedorenko
adfpractice-fedor.blogspot.com

21
Eugene Fedorenko
adfpractice-fedor.blogspot.com

22

More Related Content

Ood 2013 copy

  • 3. Oracle Application Development Framework (ADF)  Мощный фреймворк для разработки современных Java EE систем  Основная идея – максимальная продуктивность разработки при минимальных усилиях  Реализует Java EE шаблон Model-View-Controller  Предполагает сервисно-ориентированный подход к разработке  Повторное использование бизнес-сервисов  Разработка композитных приложений  Основан на стандартах  Java EE, SOA, SDO/SCA …  Основной инструмент разработки в Oracle  Fusion Applications (CRM, HCM, и т.д.)  Enterprise Manager  WebCenter Spaces  … Eugene Fedorenko adfpractice-fedor.blogspot.com 3
  • 5. Архитектура Oracle ADF Eugene Fedorenko adfpractice-fedor.blogspot.com 5
  • 6. ADF Business Components  Мощное средство разработки бизнес-модели приложения  Прозрачное маппирование сущностей реляционной БД на объектноориентированную модель бизнес-компонентов  Управление соединениями и транзакциями  Полная поддержка SQL (запросы, DML)  Управление кэшем  Контроль целостности, валидация данных, Groovy  Поддержка Master-Detail  Постраничные запросы  Lookup queries (List of Values)  Легко публикуются как SOAP/REST Web Services Eugene Fedorenko adfpractice-fedor.blogspot.com 6
  • 7. Архитектура Oracle ADF Eugene Fedorenko adfpractice-fedor.blogspot.com 7
  • 8. ADF Model  ADF Data Controls  Спецификация JSR-227  Унифицированный интерфейс представления бизнес-сервиса  Скрывает имплементацию от клиента  ADF Bindings  Привязка UI компонентов к Data Controls  Слабое связывание представления с бизнес-моделью  Полностью декларативный подход к разработке Eugene Fedorenko adfpractice-fedor.blogspot.com 8
  • 9. Архитектура Oracle ADF Eugene Fedorenko adfpractice-fedor.blogspot.com 9
  • 10. ADF Controller  Расширение стандартного JSF контроллера  ADF Task Flows  Ключевой механизм для создания функционально законченных, слабо связанных между собой задач реализующих определенный бизнес-процесс (заведение сделки, открытие контрагента, выполнение кассовой операции, ..)  Позволяет модульно разбить приложение на сценарии реализованные соответствующим Task Flow. Приложение представляет собой совокупность таких сценариев  Task Flow состоит из набора страниц/фрагментов страниц, методов, раутеров, правил навигации  Может быть помещен в регион WEB-страницы  Может быть легко преобразован в портлет Eugene Fedorenko adfpractice-fedor.blogspot.com 10
  • 11. ADF Task Flow Eugene Fedorenko adfpractice-fedor.blogspot.com 11
  • 12. Архитектура Oracle ADF Eugene Fedorenko adfpractice-fedor.blogspot.com 12
  • 13. ADF Faces Rich Client Палитра из более 150 компонентов Поддержка Ajax Настраиваемый look and feel Компоненты Data Visualization Tools (DVT)  Графики, карты, диаграммы Ганта, сводные таблицы  Встроенная поддержка rich технологий  Drag and Drop  Диалоговые и всплывающие окна  Active Data приборные панели.  Технология Push.  Поддержка шаблонов и декларативных компонент     Eugene Fedorenko adfpractice-fedor.blogspot.com 13
  • 14. Oracle ADF Mobile  Hybrid приложения для мобильных устройств  Поддержка iOS и Android  Native контейнер устройства  Доступ к сервисам устройства – камера, GPS, почта, и т.д.  Push нотификация  HTML5/JavaScript интерфейс пользователя  Более 60 компонентов  Полная поддержка жестов, анимации  Те же принципы ADF-разработки  Строим одно приложение, деплоим на несколько мобильных платформ Eugene Fedorenko adfpractice-fedor.blogspot.com 14
  • 15. На чем это работает  Сервера приложений  Браузеры Eugene Fedorenko adfpractice-fedor.blogspot.com 15
  • 16. Связь с внешними системами ADF Application ESB Portal Application Task Flow Task Flow Task Flow Web services Portlet Other Application (Siebel CRM) IFRAME Data Data Data Controls Controls Controls Business Components Model DB Eugene Fedorenko adfpractice-fedor.blogspot.com Web services Web services 16
  • 17. Интеграция с Siebel CRM Siebel JetB2 Task Flow Eugene Fedorenko adfpractice-fedor.blogspot.com 17
  • 18. Модульность приложения ADF Application Core View Core Model DealAccProd.jar DealAccProd.jar DealAccProd.jar DealAccProdFlow DealAccProdModel Eugene Fedorenko adfpractice-fedor.blogspot.com 18
  • 19. О с��стеме JetB2  JetB2 – автоматизированная банковская система, реализующая клиент-центричную модель обслуживания  Web-based приложение, построенное н�� основе всего стека технологий Oracle ADF  Трехуровневая архитектура позволяет распределить нагрузку между серверами  Снижение требований к серверу Oracle - используется пул соединений с сервером БД на сервере приложений  Поддержка портальных технологий/возможность быть как мастер системой, так и гостевой  Модульность и расширяемость  Единая система авторизации и возможность использования внешнего каталога аутентификации  Наличие выделенного сервера отчетности  JetB2 – это высокотехнологичное решение на основе самых современных стандартов IT индустрии Eugene Fedorenko adfpractice-fedor.blogspot.com 19