среда, 13 февраля 2013 г.

Bounded и Unbounded Task Flows. Виды Task Flow и работа с ними(Часть 2 - работа с Bouned Task Flow)

  Здравствуйте. В первой части этой статьи мы рассматривали Unbounded Task Flow. В  этой рассмотрим Bounded Task Flow(BTF).Как говорилось ранее:
  Bounded Task Flow- task flow имеющая четкие границы,  одну точку входа и  ноль или несколько точек выхода,   входные/выходные параметры, собственную область памяти  и декларативное управление транзакциями.
 Для демонстрации работы с Bounded Task Flow  в созданном нами приложении TaskFlowDemo в первой части   создадим  2 ADF Task Flow(MyFirstBoundedFlow.xml,     MySecondBoundedFlow.xml) в которых будут находиться :

  • В MyFirstBoundedFlow.xml: JSFF страница в котором будет поле ввода номера отдела и кнопка перехода на следующую страницу в  MySecondBoundedFlow.xml.
  • Во втором task flow будет входящий параметр Номер отдела(Deptno), при вводе которого на  странице выводится отдел, и информация по нему. А при нажатии кнопки "Показать сотрудников" переходим на страницу со списком сотрудников. 
Приступим.
1.Создайте Entity Object(Dept,Emp) и View Object(DeptView,EmpView) соответственно;
2. Для того, что бы  делать выборки из View Object  нам нужно создать параметр и критерий. Это делается во вкладке Query, как показано на следующих картинках(создайте для DeptView -Bind variable(Deptnop),View Criteria(DeptViewCriteria, где Deptno= :Deptnop),а для EmpView -Bind variable(DeptnoE),View Criteria(EmpViewCriteria, где Deptno= :DeptnoE);


вторник, 5 февраля 2013 г.

Bounded и Unbounded Task Flows. Виды Task Flow и работа с ними(Часть1 - работа с Unbouned Task Flow)

Здравствуйте, в этой статье будет рассказываться о видах TaskFlow, их создании и работы  с ними. Приступим : )
Существует два вида Task Flow

  • Unbouned Task Flow - task flow не имеющая четких границ,  а имеющая множество активностей, правил их управления и managed beans при помощи которые позволяют пользователю выполнять требуемые задачи. В этом виде task flow может иметь множество входов и выходов.
  • Bounded Task Flow- task flow имеющая четкие границы,  одну точку входа и  ноль или несколько точек выхода,   входные/выходные параметры, собственную область памяти  и декларативное управление транзакциями.
Рассмотрим на примерах работу с Bounded и Unbounded Task flow;
Подготовительный этап:
 Создайте приложение (Fusion Web Application(ADF)) и назовите его TaskFlowDemo;


Unbounded Task flow

 Открыв adfc-config.xml,  вы увидите чистый лист.Это Unbounded Task Flow нашего приложения.  На него можно добавлять страницы(View), переходы между ними(Control Flow Case,  Wild Control Flow Rule), методы(Method Call), другие TaskFlow(Task Flow Call), будущий адрес приложения(URL View), сохранение данных(Save Point Restore), разветвление(Router)
На простом примере продемонстрируем как создаются страницы в task flow и осуществляется навигация между activity(страницы,методы,роутеры). Путем переноса на лист с "Component Palette"    создайте три view(page1,page2,page3), один Wild Card Control Flow Rule, и два  Control Flow Case(p1top2 - от page1 к page2,p3-  от Wild Card Control Flow Rule к page3)

воскресенье, 3 февраля 2013 г.

Развертывание (Deploy) приложения на Weblogic

Используя  предыдущие статьи в блоге, мы уже с легкостью сможем  создать приложение и запустить его локально при помощи встроенного в JDeveloper WebLogic сервера. В этой статье мы научимся развертывать приложения на WebLogic Server. Подразумевается что вы уже умеете создавать приложения и у вас установлен WebLogic. Использовать будем демонстрационную схему Scott и создадим простую страничку которая будет выводить табличку с отделами.
Подготовительный этап:

1. Создайте Entity Object Dept,View Object DeptView и добавьте DeptView в Application Module; 
2. Cоздайте страницу DepApp.jspx;
3. Добавьте на страницу panelStretchLayout;
4. Добавьте  из Data control DeptView на страницу и создайте read-only таблицу (Row Selection: Single row) в фасетку  center компонента  panelStretchLayout

 Приступим к настройке развертывания нашего приложения на сервер. Для этого нужно настроить в каждом проекте профиль развертывания "Deployment profile" и настроить профиль развертывания для всего приложения. Для этого нужно правой кнопкой нажать по проекту и выбрать "Project Properties"(в случае приложения "Application Properties"), а там выбрать вкладку Deploy  

пятница, 1 февраля 2013 г.

Managed beans(программное управление компонентами) в JDeveloper 11.1.1.6.0

                  При помощи drag-n-drop технологий в JDeveloper можно с легкостью создать приложение, которое будет отображать и редактировать  Master-detail связи,списки,графики. Но часто для реализации необходимых требований приложения требуется программное управление компонентами и выполнение определенных Java методов. Для этого в ADF существуют конфигурационные файлы называемые "Bean"(Бины). Бины представляют из себя Java классы со своей областью жизни(scope) экземпляров методов и переменных.
                 
                  Области жизни Managed bean-ов бывают следующих видов:

  • Application scope - экземпляр bean-a существует на протяжении работы приложения;
  • Session scope - экземпляр bean-a создается один раз при обращении пользователя к приложению, и используется на протяжении жизни сессии;
  • Page flow scope  - эта область используется для взаимосвязи между страниц в TaskFlow и существует ;
  • Request scope - экземпляр bean-a создается на каждый запрос до тех пор пока не отправится обратно клиенту;
  • Backing bean scope  - это область используется для декларативных компонентов и page fragment(region) и существует так же как и request scope  ;
  • View scope - экземпляр bean-a создается один раз при обращении к странице, и используется ровно столько, сколько пользователь находится на странице (включая ajax запросы).