SlideShare a Scribd company logo
1 of 32
Download to read offline
ADF Task Flows
For Beginners
By Zeeshan Baig, Oracle ACE
www.baigzeeshan.com
A little about me.....
I am currently working as Senior Developer at NMH
in Chicago.

● 10+ years of experience in Oracle Development
  tools (Database, Forms, APEX, ADF, Fusion)
● Oracle ACE, OCP DBA certified in 8, 8i and 10g
● Technical blog on ADF and other fusion
  technologies at www.baigzeeshan.com
● YouTube channel http://youtube.com/baigsorcl
Disclaimer: The views expressed are my own and does not affiliates with my employer
Agenda
●     What are Task Flows?
●     Types of Task Flows?
●     Other concepts used in Task flows
●     Understand different components to build
      task flows
●     Introduction of Task flows templates
●     Some tips on building reusable task flows
●     Demo
●     Questions
Thanks Google, Flickr.com and Oracle documentation for images used in this presentation. These images are
unmodified and used for educational purpose only.
What are task flows
their types
and other concepts?
What are 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
Types of Task flows
  Un Bounded       Bounded
    Entry Points   Entry Points




    Exit Points     Exit Points
Types of Task Flows
    Key Differences

Un-bounded (UTF)                Bounded (BTF)

●   Public pages / No boundry   ●   Well defined boundry
●   No reuse                    ●   Reusable
●   No input parameters         ●   Can take input parameters
●   No return values            ●   Can return values
●   No transaction Control      ●   Allows transaction control
●   No security                 ●   Security control
●   e.g. Pages - Home, Help,    ●   e.g. Register, Checkout,
    Search, Navigations             other application processes
Bounded 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
Train Flows
Video tutorial at
http://www.baigzeeshan.com/2010/10/creating-train-flows-in-oracle-adf.
html
Page vs Page Fragment
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
Task flow Regions
Regions are created when you drag and drop a bounded
task flow on a page

     Static Regions                Dynamic Regions
  ● Fixed visiblity           ● Visible based on custom logic
  ● Creates Task flow         ● Creates Multi-taskflow
     binding on page              binding

  ● Tutorial http://www.      ● Tutorial
     baigzeeshan.             http://www.baigzeeshan.
     com/2010/04/creating-    com/2010/06/working-with-dynamic-regions-
     pages-with-regions-in-   in-oracle.html
     oracle.html
Task Flow Managed Bean
Scopes
1. Application.....      Remains till application stops
2. Session..........     Persists till user session
3. PageFlow......        Also known as Task flow scope
4. View...............   Lifespan till current page
5. Request.........      Lives for duration of request
6. BackingBean.          only
7. Flash Scope..         UI Component based
                         Remains Till Next encountered
                         view (new in JSF 2.0)
Task flow Managed Bean
Scopes
OK I got it... now what
components i need to build
them?
Task Flow Components
Task flow Components
View Activity ● Displays a JSF Page or Fragment
              ● Extension .jsf, .jspx and .jsff
                   (fragments)
               ●   Bookmarkable only in unbounded
                   Task flows
               ●   Can have one or more task flow
                   regions
               ●   Good practice to have page
                   definition file attached
Task flow Components
 Method Call   ● Allows to call application logic in
                 task flow
  Activity
               ● 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, expcetion handler
               ● Can have return values in case of
                 method returns some result
               ● if method is of 'void' type then
                 outcome would be simple string
Task flow Components
Router Activity
                  ● 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.
Task flow Components
Task flow call
   activity      ● 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
Task flow Components
 Task Flow
  Return     ● 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
Task flow Components
 URL View
  Activity
             ● 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
Task flow Components
 Save point
  Restore
              ● Allow to restore application to
                previous state
              ● Supports Save for later
                functionality
              ● Only required where Restore
                needed
Task flow Components
Parent      ● Allows to trigger
Action         navigation of Parent
               view activity in ADF
               Region
Control
flow case   ● Identifies how control will
               paas from one activity to
               another

Wild-card   ● Represents global
               navigation case
Building Task Flows
Building Task Flows
Task flow Templates
● 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
How to Reuse Task flows in
 Different Application
● 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 libary
  path
● Complete Tutorial available at http:
  //www.baigzeeshan.
  com/2010/08/sharing-business-
  components-and-task.html
Tips to build Reusable
Task Flows
● Build BTFs in seperate 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 behaviour of UI components
  based on Input parameters e.g. read-only,
  show/hide
● Use dynamic regions
Demo Example
●    Search Employees - Provides Search facility
Secured, called as normal on Home page and as List of values on
upload photo task flow
 ● View / Edit Employees
 Secured, Allows 'Managers' to edit and 'endusers' to view
employee detail. Displayed as ADF region and deployed as ADF
library jar
 ● Upload Photo - Task flow to upload employee photo
Secured, Called as Dialog and later calling search flow in a model
dialog
 ● Public
Runs a flash movie on home page for all unauthenticated users for
authenticated users displays graphs based on user type
My Contact
BLOG
http://baigzeeshan.com

YouTube Channel
http://youtube.com/baigsorcl

Email
zeeshan.baig82@gmail.com
Congratulations......
You are now Task flows Expert.... Thank you

More Related Content

What's hot

White Paper Oracle Subledger Accounting
White Paper Oracle Subledger AccountingWhite Paper Oracle Subledger Accounting
White Paper Oracle Subledger AccountingSandeep Vantmuriswami
Β 
Oracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto InvoiceOracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto InvoiceSekhar Byna
Β 
Application engine
Application engineApplication engine
Application engineJAYAARC
Β 
Redux workshop
Redux workshopRedux workshop
Redux workshopImran Sayed
Β 
Its time to React.js
Its time to React.jsIts time to React.js
Its time to React.jsRitesh Mehrotra
Β 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJSKnoldus Inc.
Β 
BOM & WIP
BOM & WIPBOM & WIP
BOM & WIPrajeev s
Β 
Select all record from menu for matching item type in ap invoice personalization
Select all record from menu for matching item type in ap invoice personalizationSelect all record from menu for matching item type in ap invoice personalization
Select all record from menu for matching item type in ap invoice personalizationAhmed Elshayeb
Β 
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bit
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bitOracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bit
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bitMohammed Raouf
Β 
Oracle Applications R12 architecture
Oracle Applications R12 architectureOracle Applications R12 architecture
Oracle Applications R12 architectureSekhar Byna
Β 
React JS: A Secret Preview
React JS: A Secret PreviewReact JS: A Secret Preview
React JS: A Secret Previewvaluebound
Β 
React js programming concept
React js programming conceptReact js programming concept
React js programming conceptTariqul islam
Β 
An Oracle ADF Introduction
An Oracle ADF IntroductionAn Oracle ADF Introduction
An Oracle ADF IntroductionJean-Marc Desvaux
Β 
Introduction to JSX
Introduction to JSXIntroduction to JSX
Introduction to JSXMicah Wood
Β 
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Vadym Kazulkin
Β 

What's hot (20)

White Paper Oracle Subledger Accounting
White Paper Oracle Subledger AccountingWhite Paper Oracle Subledger Accounting
White Paper Oracle Subledger Accounting
Β 
Oracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto InvoiceOracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto Invoice
Β 
reactJS
reactJSreactJS
reactJS
Β 
SOLID Principles
SOLID PrinciplesSOLID Principles
SOLID Principles
Β 
Application engine
Application engineApplication engine
Application engine
Β 
Redux workshop
Redux workshopRedux workshop
Redux workshop
Β 
Its time to React.js
Its time to React.jsIts time to React.js
Its time to React.js
Β 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJS
Β 
BOM & WIP
BOM & WIPBOM & WIP
BOM & WIP
Β 
Select all record from menu for matching item type in ap invoice personalization
Select all record from menu for matching item type in ap invoice personalizationSelect all record from menu for matching item type in ap invoice personalization
Select all record from menu for matching item type in ap invoice personalization
Β 
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bit
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bitOracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bit
Oracle R12.1 Full & Tips Installation on Windows Server 2008 64/32 bit
Β 
Oracle Applications R12 architecture
Oracle Applications R12 architectureOracle Applications R12 architecture
Oracle Applications R12 architecture
Β 
An Introduction to Redux
An Introduction to ReduxAn Introduction to Redux
An Introduction to Redux
Β 
React JS: A Secret Preview
React JS: A Secret PreviewReact JS: A Secret Preview
React JS: A Secret Preview
Β 
Oracle Fixed Assets Testscripts
Oracle Fixed Assets TestscriptsOracle Fixed Assets Testscripts
Oracle Fixed Assets Testscripts
Β 
Universal React apps in Next.js
Universal React apps in Next.jsUniversal React apps in Next.js
Universal React apps in Next.js
Β 
React js programming concept
React js programming conceptReact js programming concept
React js programming concept
Β 
An Oracle ADF Introduction
An Oracle ADF IntroductionAn Oracle ADF Introduction
An Oracle ADF Introduction
Β 
Introduction to JSX
Introduction to JSXIntroduction to JSX
Introduction to JSX
Β 
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Adopting Java for the Serverless World at Voxxed Days Bruxelles 2023
Β 

Similar to Oracle ADF Task Flows for Beginners

ADF Taskflows for beginners
ADF Taskflows for beginnersADF Taskflows for beginners
ADF Taskflows for beginnersRajasekhar Manda
Β 
Build your Business Services using ADF Task Flows
Build your Business Services using ADF Task FlowsBuild your Business Services using ADF Task Flows
Build your Business Services using ADF Task FlowsDataNext Solutions
Β 
Introduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsIntroduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsRohan Walia
Β 
Silicon Valley Code Camp - JSF Controller for Reusability
Silicon Valley Code Camp - JSF Controller for ReusabilitySilicon Valley Code Camp - JSF Controller for Reusability
Silicon Valley Code Camp - JSF Controller for Reusabilityjcruizjdev
Β 
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...Kaxil Naik
Β 
Airflow Intro-1.pdf
Airflow Intro-1.pdfAirflow Intro-1.pdf
Airflow Intro-1.pdfBagustTriCahyo1
Β 
Free the Functions with Fn project!
Free the Functions with Fn project!Free the Functions with Fn project!
Free the Functions with Fn project!J On The Beach
Β 
Spark Workflow Management
Spark Workflow ManagementSpark Workflow Management
Spark Workflow ManagementRomi Kuntsman
Β 
React - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesReact - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesJumping Bean
Β 
An intro to git
An intro to gitAn intro to git
An intro to gitDan Shrader
Β 
Data Engineer's Lunch #44: Prefect
Data Engineer's Lunch #44: PrefectData Engineer's Lunch #44: Prefect
Data Engineer's Lunch #44: PrefectAnant Corporation
Β 
Oracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow OverviewOracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow OverviewChris Muir
Β 
Liferay portals in real projects
Liferay portals  in real projectsLiferay portals  in real projects
Liferay portals in real projectsIBACZ
Β 
Dataflow.pptx
Dataflow.pptxDataflow.pptx
Dataflow.pptxSadeka Islam
Β 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Mack Hardy
Β 
Fighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFabio Pellegrini
Β 
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdf
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdfPrefect Paris Airflow Meetup Jeff Hale April 2023.pdf
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdfJeff Hale
Β 
RedisConf17 - Dynomite - Making Non-distributed Databases Distributed
RedisConf17 - Dynomite - Making Non-distributed Databases DistributedRedisConf17 - Dynomite - Making Non-distributed Databases Distributed
RedisConf17 - Dynomite - Making Non-distributed Databases DistributedRedis Labs
Β 
Making Workflows Work for You
Making Workflows Work for YouMaking Workflows Work for You
Making Workflows Work for YouStephan Richter
Β 

Similar to Oracle ADF Task Flows for Beginners (20)

ADF Taskflows for beginners
ADF Taskflows for beginnersADF Taskflows for beginners
ADF Taskflows for beginners
Β 
Build your Business Services using ADF Task Flows
Build your Business Services using ADF Task FlowsBuild your Business Services using ADF Task Flows
Build your Business Services using ADF Task Flows
Β 
Introduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsIntroduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task Flows
Β 
Silicon Valley Code Camp - JSF Controller for Reusability
Silicon Valley Code Camp - JSF Controller for ReusabilitySilicon Valley Code Camp - JSF Controller for Reusability
Silicon Valley Code Camp - JSF Controller for Reusability
Β 
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...
Apache Airflow in the Cloud: Programmatically orchestrating workloads with Py...
Β 
Airflow Intro-1.pdf
Airflow Intro-1.pdfAirflow Intro-1.pdf
Airflow Intro-1.pdf
Β 
Free the Functions with Fn project!
Free the Functions with Fn project!Free the Functions with Fn project!
Free the Functions with Fn project!
Β 
Spark Workflow Management
Spark Workflow ManagementSpark Workflow Management
Spark Workflow Management
Β 
React - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesReact - The JavaScript Library for User Interfaces
React - The JavaScript Library for User Interfaces
Β 
An intro to git
An intro to gitAn intro to git
An intro to git
Β 
Data Engineer's Lunch #44: Prefect
Data Engineer's Lunch #44: PrefectData Engineer's Lunch #44: Prefect
Data Engineer's Lunch #44: Prefect
Β 
Oracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow OverviewOracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow Overview
Β 
Web dynpro
Web dynproWeb dynpro
Web dynpro
Β 
Liferay portals in real projects
Liferay portals  in real projectsLiferay portals  in real projects
Liferay portals in real projects
Β 
Dataflow.pptx
Dataflow.pptxDataflow.pptx
Dataflow.pptx
Β 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Β 
Fighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless phpFighting legacy with hexagonal architecture and frameworkless php
Fighting legacy with hexagonal architecture and frameworkless php
Β 
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdf
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdfPrefect Paris Airflow Meetup Jeff Hale April 2023.pdf
Prefect Paris Airflow Meetup Jeff Hale April 2023.pdf
Β 
RedisConf17 - Dynomite - Making Non-distributed Databases Distributed
RedisConf17 - Dynomite - Making Non-distributed Databases DistributedRedisConf17 - Dynomite - Making Non-distributed Databases Distributed
RedisConf17 - Dynomite - Making Non-distributed Databases Distributed
Β 
Making Workflows Work for You
Making Workflows Work for YouMaking Workflows Work for You
Making Workflows Work for You
Β 

More from DataNext Solutions

Getting Started with Web Services
Getting Started with Web ServicesGetting Started with Web Services
Getting Started with Web ServicesDataNext Solutions
Β 
Talking Services with Oracle ADF and Oracle SOA Suite
Talking Services with Oracle ADF and Oracle SOA SuiteTalking Services with Oracle ADF and Oracle SOA Suite
Talking Services with Oracle ADF and Oracle SOA SuiteDataNext Solutions
Β 
Oracle SOA Suite for High availability Enterprises
Oracle SOA Suite for High availability EnterprisesOracle SOA Suite for High availability Enterprises
Oracle SOA Suite for High availability EnterprisesDataNext Solutions
Β 
Working with Portlets in ADF and Webcenter
Working with Portlets in ADF and WebcenterWorking with Portlets in ADF and Webcenter
Working with Portlets in ADF and WebcenterDataNext Solutions
Β 
Getting Started with Oracle APEX
Getting Started with Oracle APEXGetting Started with Oracle APEX
Getting Started with Oracle APEXDataNext Solutions
Β 
The Challenges Oracle Forms Migration to ADF
The Challenges Oracle Forms Migration to ADFThe Challenges Oracle Forms Migration to ADF
The Challenges Oracle Forms Migration to ADFDataNext Solutions
Β 
A guide to ADF fusion development
A guide to ADF fusion developmentA guide to ADF fusion development
A guide to ADF fusion developmentDataNext Solutions
Β 

More from DataNext Solutions (8)

Cloud Computing Basics
Cloud Computing BasicsCloud Computing Basics
Cloud Computing Basics
Β 
Getting Started with Web Services
Getting Started with Web ServicesGetting Started with Web Services
Getting Started with Web Services
Β 
Talking Services with Oracle ADF and Oracle SOA Suite
Talking Services with Oracle ADF and Oracle SOA SuiteTalking Services with Oracle ADF and Oracle SOA Suite
Talking Services with Oracle ADF and Oracle SOA Suite
Β 
Oracle SOA Suite for High availability Enterprises
Oracle SOA Suite for High availability EnterprisesOracle SOA Suite for High availability Enterprises
Oracle SOA Suite for High availability Enterprises
Β 
Working with Portlets in ADF and Webcenter
Working with Portlets in ADF and WebcenterWorking with Portlets in ADF and Webcenter
Working with Portlets in ADF and Webcenter
Β 
Getting Started with Oracle APEX
Getting Started with Oracle APEXGetting Started with Oracle APEX
Getting Started with Oracle APEX
Β 
The Challenges Oracle Forms Migration to ADF
The Challenges Oracle Forms Migration to ADFThe Challenges Oracle Forms Migration to ADF
The Challenges Oracle Forms Migration to ADF
Β 
A guide to ADF fusion development
A guide to ADF fusion developmentA guide to ADF fusion development
A guide to ADF fusion development
Β 

Recently uploaded

Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
Β 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024Janet Corral
Β 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
Β 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
Β 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
Β 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
Β 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
Β 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
Β 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
Β 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
Β 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
Β 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
Β 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
Β 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
Β 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
Β 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
Β 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
Β 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
Β 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
Β 

Recently uploaded (20)

Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
Β 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
Β 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
Β 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Β 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
Β 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
Β 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Β 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
Β 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
Β 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
Β 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Β 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Β 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
Β 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
Β 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
Β 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
Β 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
Β 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Β 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
Β 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
Β 

Oracle ADF Task Flows for Beginners

  • 1. ADF Task Flows For Beginners By Zeeshan Baig, Oracle ACE www.baigzeeshan.com
  • 2. A little about me..... I am currently working as Senior Developer at NMH in Chicago. ● 10+ years of experience in Oracle Development tools (Database, Forms, APEX, ADF, Fusion) ● Oracle ACE, OCP DBA certified in 8, 8i and 10g ● Technical blog on ADF and other fusion technologies at www.baigzeeshan.com ● YouTube channel http://youtube.com/baigsorcl Disclaimer: The views expressed are my own and does not affiliates with my employer
  • 3. Agenda ● What are Task Flows? ● Types of Task Flows? ● Other concepts used in Task flows ● Understand different components to build task flows ● Introduction of Task flows templates ● Some tips on building reusable task flows ● Demo ● Questions Thanks Google, Flickr.com and Oracle documentation for images used in this presentation. These images are unmodified and used for educational purpose only.
  • 4. What are task flows their types and other concepts?
  • 5. What are 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
  • 6. Types of Task flows Un Bounded Bounded Entry Points Entry Points Exit Points Exit Points
  • 7. Types of Task Flows Key Differences Un-bounded (UTF) Bounded (BTF) ● Public pages / No boundry ● Well defined boundry ● No reuse ● Reusable ● No input parameters ● Can take input parameters ● No return values ● Can return values ● No transaction Control ● Allows transaction control ● No security ● Security control ● e.g. Pages - Home, Help, ● e.g. Register, Checkout, Search, Navigations other application processes
  • 8. Bounded 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
  • 9. Bounded Task flows Train Flows Video tutorial at http://www.baigzeeshan.com/2010/10/creating-train-flows-in-oracle-adf. html
  • 10. Page vs Page Fragment 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
  • 11. Task flow Regions Regions are created when you drag and drop a bounded task flow on a page Static Regions Dynamic Regions ● Fixed visiblity ● Visible based on custom logic ● Creates Task flow ● Creates Multi-taskflow binding on page binding ● Tutorial http://www. ● Tutorial baigzeeshan. http://www.baigzeeshan. com/2010/04/creating- com/2010/06/working-with-dynamic-regions- pages-with-regions-in- in-oracle.html oracle.html
  • 12. Task Flow Managed Bean Scopes 1. Application..... Remains till application stops 2. Session.......... Persists till user session 3. PageFlow...... Also known as Task flow scope 4. View............... Lifespan till current page 5. Request......... Lives for duration of request 6. BackingBean. only 7. Flash Scope.. UI Component based Remains Till Next encountered view (new in JSF 2.0)
  • 13. Task flow Managed Bean Scopes
  • 14. OK I got it... now what components i need to build them?
  • 16. Task flow Components View Activity ● Displays a JSF Page or Fragment ● Extension .jsf, .jspx and .jsff (fragments) ● Bookmarkable only in unbounded Task flows ● Can have one or more task flow regions ● Good practice to have page definition file attached
  • 17. Task flow Components Method Call ● Allows to call application logic in task flow Activity ● 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, expcetion handler ● Can have return values in case of method returns some result ● if method is of 'void' type then outcome would be simple string
  • 18. Task flow Components Router Activity ● 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.
  • 19. Task flow Components Task flow call activity ● 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
  • 20. Task flow Components Task Flow Return ● 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
  • 21. Task flow Components URL View Activity ● 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
  • 22. Task flow Components Save point Restore ● Allow to restore application to previous state ● Supports Save for later functionality ● Only required where Restore needed
  • 23. Task flow Components Parent ● Allows to trigger Action navigation of Parent view activity in ADF Region Control flow case ● Identifies how control will paas from one activity to another Wild-card ● Represents global navigation case
  • 26. Task flow Templates ● 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
  • 27. How to Reuse Task flows in Different Application ● 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 libary path ● Complete Tutorial available at http: //www.baigzeeshan. com/2010/08/sharing-business- components-and-task.html
  • 28. Tips to build Reusable Task Flows ● Build BTFs in seperate 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 behaviour of UI components based on Input parameters e.g. read-only, show/hide ● Use dynamic regions
  • 29. Demo Example ● Search Employees - Provides Search facility Secured, called as normal on Home page and as List of values on upload photo task flow ● View / Edit Employees Secured, Allows 'Managers' to edit and 'endusers' to view employee detail. Displayed as ADF region and deployed as ADF library jar ● Upload Photo - Task flow to upload employee photo Secured, Called as Dialog and later calling search flow in a model dialog ● Public Runs a flash movie on home page for all unauthenticated users for authenticated users displays graphs based on user type
  • 30.
  • 32. Congratulations...... You are now Task flows Expert.... Thank you