39
Build Your Business Services using ADF Task Flows Zeeshan Baig, Oracle ACE Technical Manager, AST Corporation www.astcorporation.com

Build your Business Services using ADF Task Flows

Embed Size (px)

DESCRIPTION

ADF Task Flow is the most important and essential feature of ADF development which makes ADF unique in the battle of frameworks. This session will help you to understand different components and techniques to build task flows and will discuss some use cases.

Citation preview

Page 1: Build your Business Services using ADF Task Flows

Build Your Business Services

using ADF Task Flows Zeeshan Baig, Oracle ACE

Technical Manager, AST Corporation

www.astcorporation.com

Page 2: Build your Business Services using ADF Task Flows

A little about me……

● 13+ years of Technical Experience in Oracle

Products

● Technical Manager at AST

● Oracle ACE Member

● Oracle ADF Certified Specialist and OCP DBA

● Technical Blog at www.baigzeeshan.com

● YouTube Tutorials www.youtube.com/baigsorcl

● Twitter @baigsorcl

Page 3: Build your Business Services using ADF Task Flows

● What are Task Flows?

● Types of Task Flows?

● Other concepts used in Task flows

● Understand different components to build task flows

● Task flows templates

● Reusable task flows

● Use cases

● Q & A Thanks Google, Flickr.com and Oracle documentation for images used in this presentation. These images are unmodified and used for educational purpose only.

Agenda

Page 4: Build your Business Services using ADF Task Flows

What are task flows their types and other concepts?

Page 5: Build your Business Services using ADF Task Flows

In simple words

● Visual representation of app process flow

● Each TF contains portion of app navigation

● They are similar to traditional flow charts

● Primary purpose is reuse

What are Task Flows?

Page 6: Build your Business Services using ADF Task Flows

Un Bounded Entry Points

Types of Task flows

Bounded Entry Points

Exit Points Exit Points

Page 7: Build your Business Services using ADF Task Flows

Types of Task Flows - Key Differences

Un-bounded (UTF) ● Public pages / No boundary

● No reuse

● No input parameters

● No return values

● No transaction Control

● No security

● e.g. Pages - Home, Help,

Search, Navigations

Bounded (BTF) ● Well defined boundary

● Reusable

● Can take input parameters

● Can return values

● Allows transaction control

● Security control

● e.g. Register, Checkout, other

application processes

Page 8: Build your Business Services using ADF Task Flows

● A typical application contains one unbounded task flow and many

bounded task flows

● Build bounded task flows in its own application / workspace

BTFs can

● Create with Pages or Page fragments

● Create as Train flows

● Call in a Dialog

Bounded Task flows

Page 10: Build your Business Services using ADF Task Flows

Page Fragment

● Renders as content in another JSF page

● Must not contains the af:document, af:form, f:view, head, body and

html because JSF page already has it

● has .jsff extension

Page

● can contains many fragments

● extension .jsf or .jspx

Page vs. Page Fragment

Page 11: Build your Business Services using ADF Task Flows

Task flow Regions

Static Regions

● Fixed visibility

● Creates Task flow binding on

page

● Tutorial http://www.baigzeeshan.com/2010/04/crea

ting-pages-with-regions-in-oracle.html

Dynamic Regions

● Visible based on custom logic

● Creates Multi-task flow binding

in page definition

● Tutorial http://www.baigzeeshan.com/2010/06/working-

with-dynamic-regions-in-oracle.html

● Regions are created when you drag and drop a bounded task flow on a

page

Page 12: Build your Business Services using ADF Task Flows

● Application..... Remains till application stops

● Session.......... Persists till user session

● PageFlow...... Also known as Task flow scope

● View............... Lifespan till current page

● Request......... Lives for duration of request only

● BackingBean. UI Component based

Task Flow Managed Bean Scopes

Page 13: Build your Business Services using ADF Task Flows

Task flow Managed Bean Scopes

Page 14: Build your Business Services using ADF Task Flows

Task Flow Components

Page 15: Build your Business Services using ADF Task Flows

Task flow Components

● Displays a JSF Page or Fragment

● Extension .jsf, .jspx and .jsff (fragments)

● Bookmark able only in unbounded Task flows

● Can have one or more task flow regions

● Good practice to have page definition file

attached

Page 16: Build your Business Services using ADF Task Flows

Task flow Components ● Allows to call application logic in task flow

● Drag and drop methods from Data Control OR DnD

from component palette then configure parameters to

call managed bean methods

● Common usages are initialization, Clean-up,

exception handler

● Can have return values in case of method returns

some result

● if method is of 'void' type then outcome would be

simple string

Page 17: Build your Business Services using ADF Task Flows

Task flow Components

● Route to any activity based on EL expression

● Have default condition

● No Limits on conditions

● No limits on destinations

● Good practice is to start your task flows with

Router for any future customizations.

Page 18: Build your Business Services using ADF Task Flows

Task flow Components

● Calls another task flow from unbounded and

bounded task flow

● Can take input parameters

● Can return output parameters

● Drag and Drop task flow from Application

navigator to task flow

● Drag and Drop task flow to the page as link or

button

Page 19: Build your Business Services using ADF Task Flows

Task flow Components

● Used to ends or send controls back to caller in

Bounded Task flows

● Does either Commit or Rollback (If Task flow is

transactional)

● Set outcome to required control flow navigation-

case.

● BTF can have many TF return activities

Page 20: Build your Business Services using ADF Task Flows

Task flow Components

● Used to Redirect application to addressable URL

● Can call BTFs

● Can call View activities on UTF

● Can call external sites e.g. http://www.google.com

● No Control returned to caller

Page 21: Build your Business Services using ADF Task Flows

Task flow Components

● Allow to restore application to previous state

● Supports Save for later functionality

● Only required where Restore needed

Page 22: Build your Business Services using ADF Task Flows

Task flow Components

● Allows to trigger navigation of Parent view

activity in ADF Region

● Identifies how control will pass from one

activity to another

● Represents global navigation case

Page 23: Build your Business Services using ADF Task Flows

● You can create task flow templates for common

activities in bounded task flows

● Common use case is error handler

● Best practice is to use template for all bounded task

flows

Task flow Templates

Page 24: Build your Business Services using ADF Task Flows

Building Task Flows

Page 25: Build your Business Services using ADF Task Flows

Building Task Flows

Page 26: Build your Business Services using ADF Task Flows

● Build BTFs in separate application then merge them into master

app using ADF Lib Jar

● Use task flow with page fragments

● Use Input parameters

● Use Router activity as default

● Set conditional behavior of UI components

based on Input parameters

● Use dynamic regions

Tips to build Reusable Task Flows

Page 27: Build your Business Services using ADF Task Flows

● Create Deployment Profile ADF Library Jar

● Deploy as ADF library Jar

● Create Connection as File system in Resource Palette

● Drag and Drop from Resource Palette to your page and ADD

library path ● Complete Tutorial available at http://www.baigzeeshan.com/2010/08/sharing-business-components-and-

task.html

How to Reuse Task flows

Page 28: Build your Business Services using ADF Task Flows

● Typical Home page - Calling Task Flows from Task Flows

Building Task flows as Services

Page 29: Build your Business Services using ADF Task Flows

● Common Flow - Search, Edit , Commit or Rollback

Building Task flows as Services

Page 30: Build your Business Services using ADF Task Flows

● Service Flow - Add new Item while entering data on other screen

Building Task flows as Services

Page 31: Build your Business Services using ADF Task Flows

● Service Flow - Upload Photos, Review and Submit

Building Task flows as Services

Page 32: Build your Business Services using ADF Task Flows

● Decision Point - Based on UserType Parameter Redirect to

different Page

Building Task flows as Services

Page 33: Build your Business Services using ADF Task Flows

● Parameterized Task Flow - Multi-functional, Hide/show

components based on parameters

Building Task flows as Services

Page 34: Build your Business Services using ADF Task Flows

● URL call flow - Calling Registration, Profile Flows using URL call,

Independent transaction

Building Task flows as Services

Page 35: Build your Business Services using ADF Task Flows

● Registration Process – Train, Method calls

Building Task flows as Services

Page 36: Build your Business Services using ADF Task Flows

● Shopping Cart Check out – Reconcile, Review, Submit, Continue

Building Task flows as Services

Page 37: Build your Business Services using ADF Task Flows

● Learned about Task Flows

● Bounded and Unbounded Task Flows

● Page Fragments, Managed Beans, Templates

● ADF Library Jars, Components of Task flows

● Use cases

Review

Page 38: Build your Business Services using ADF Task Flows

Q & A

Page 39: Build your Business Services using ADF Task Flows

● BLOG http://baigzeeshan.com

● YouTube Channel http://youtube.com/baigsorcl

● Email [email protected]

● Twitter @baigsorcl

Thank you, Task Flow Experts….