SlideShare une entreprise Scribd logo
1  sur  39
Build Your Business
Services
using ADF Task Flows
Zeeshan Baig, Oracle ACE
Technical Manager, AST Corporation
www.astcorporation.com
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
● 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
What are task flows
their types
and other concepts?
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?
Un Bounded
Entry Points
Types of Task flows
Bounded
Entry Points
Exit Points Exit Points
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
● 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
Video tutorial at
http://www.baigzeeshan.com/2010/10/creating-train-flows-in-oracle-
adf.html
Bounded Task flows - Train 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
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
● 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
Task flow Managed Bean Scopes
Task Flow Components
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
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
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.
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
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
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
Task flow Components
● Allow to restore application to previous state
● Supports Save for later functionality
● Only required where Restore needed
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
● 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
Building Task Flows
Building 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
● 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
● Typical Home page - Calling Task Flows from Task Flows
Building Task flows as Services
● Common Flow - Search, Edit , Commit or Rollback
Building Task flows as Services
● Service Flow - Add new Item while entering data on other screen
Building Task flows as Services
● Service Flow - Upload Photos, Review and Submit
Building Task flows as Services
● Decision Point - Based on UserType Parameter Redirect to
different Page
Building Task flows as Services
● Parameterized Task Flow - Multi-functional, Hide/show
components based on parameters
Building Task flows as Services
● URL call flow - Calling Registration, Profile Flows using URL call,
Independent transaction
Building Task flows as Services
● Registration Process – Train, Method calls
Building Task flows as Services
● Shopping Cart Check out – Reconcile, Review, Submit, Continue
Building Task flows as Services
● Learned about Task Flows
● Bounded and Unbounded Task Flows
● Page Fragments, Managed Beans, Templates
● ADF Library Jars, Components of Task flows
● Use cases
Review
Q & A
● BLOG http://baigzeeshan.com
● YouTube Channel http://youtube.com/baigsorcl
● Email zeeshan.baig82@gmail.com
● Twitter @baigsorcl
Thank you, Task Flow Experts….

Contenu connexe

Tendances

Upcoming JDeveloper ADF Business Components REST support
Upcoming JDeveloper ADF Business Components REST supportUpcoming JDeveloper ADF Business Components REST support
Upcoming JDeveloper ADF Business Components REST supportSteven Davelaar
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced TroubleshootingJohn Calvert
 
IBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewIBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewDvir Reznik
 
Gabriel Gayhart - XML Pointer File Example
Gabriel Gayhart - XML Pointer File ExampleGabriel Gayhart - XML Pointer File Example
Gabriel Gayhart - XML Pointer File Examplelinkedinsys
 
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced TroubleshootingSharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced TroubleshootingJohn Calvert
 
Oracle Apex Technical Introduction
Oracle Apex   Technical IntroductionOracle Apex   Technical Introduction
Oracle Apex Technical Introductioncrokitta
 
Practical management of development & QA environments for SharePoint 2013
Practical management of development & QA environments for SharePoint 2013Practical management of development & QA environments for SharePoint 2013
Practical management of development & QA environments for SharePoint 2013SharePointRadi
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarKeyur Shah
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchRob Windsor
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programmingandrejusb
 
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...ADF in Action - getting (re)acquainted with Oracle’s premier application deve...
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...Lucas Jellema
 
Intro to SpringBatch NoSQL 2021
Intro to SpringBatch NoSQL 2021Intro to SpringBatch NoSQL 2021
Intro to SpringBatch NoSQL 2021Slobodan Lohja
 
Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Slobodan Lohja
 
Forms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression PactForms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression Pactandrejusb
 
Web flowpresentation
Web flowpresentationWeb flowpresentation
Web flowpresentationRoman Brovko
 
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16Alfredo Abate
 
ADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guideADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guideLuc Bors
 

Tendances (20)

Upcoming JDeveloper ADF Business Components REST support
Upcoming JDeveloper ADF Business Components REST supportUpcoming JDeveloper ADF Business Components REST support
Upcoming JDeveloper ADF Business Components REST support
 
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption   Lessons Learned and Advanced TroubleshootingSharePoint 2016 Platform Adoption   Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Platform Adoption Lessons Learned and Advanced Troubleshooting
 
IBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewIBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's New
 
Gabriel Gayhart - XML Pointer File Example
Gabriel Gayhart - XML Pointer File ExampleGabriel Gayhart - XML Pointer File Example
Gabriel Gayhart - XML Pointer File Example
 
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced TroubleshootingSharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
SharePoint 2016 Adoption - Lessons Learned and Advanced Troubleshooting
 
Oracle Apex Technical Introduction
Oracle Apex   Technical IntroductionOracle Apex   Technical Introduction
Oracle Apex Technical Introduction
 
Practical management of development & QA environments for SharePoint 2013
Practical management of development & QA environments for SharePoint 2013Practical management of development & QA environments for SharePoint 2013
Practical management of development & QA environments for SharePoint 2013
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programming
 
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...ADF in Action - getting (re)acquainted with Oracle’s premier application deve...
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...
 
Intro to SpringBatch NoSQL 2021
Intro to SpringBatch NoSQL 2021Intro to SpringBatch NoSQL 2021
Intro to SpringBatch NoSQL 2021
 
Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)
 
Forms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression PactForms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression Pact
 
Web flowpresentation
Web flowpresentationWeb flowpresentation
Web flowpresentation
 
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 2: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
 
ECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your IntranetECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your Intranet
 
ADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guideADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guide
 

Similaire à Build your Business Services using ADF Task Flows

ADF Taskflows for beginners
ADF Taskflows for beginnersADF Taskflows for beginners
ADF Taskflows for beginnersRajasekhar Manda
 
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
 
Lightning Design System and Components for Visualforce Developers
Lightning Design System and Components for Visualforce DevelopersLightning Design System and Components for Visualforce Developers
Lightning Design System and Components for Visualforce DevelopersSalesforce Developers
 
Introduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsIntroduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsRohan Walia
 
Spark Workflow Management
Spark Workflow ManagementSpark Workflow Management
Spark Workflow ManagementRomi Kuntsman
 
Adf & Jdeveloper overview
Adf & Jdeveloper overviewAdf & Jdeveloper overview
Adf & Jdeveloper overviewRohan Walia
 
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
 
[20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team][20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team]Wong Hoi Sing Edison
 
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
 
Web app job and functions - TUGAIT 2017
Web app job and functions  - TUGAIT 2017Web app job and functions  - TUGAIT 2017
Web app job and functions - TUGAIT 2017Steef-Jan Wiggers
 
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...ate.douma
 
Progressive web applications
Progressive web applicationsProgressive web applications
Progressive web applicationsTom Martin
 
Play with azure functions
Play with azure functionsPlay with azure functions
Play with azure functionsBaskar rao Dsn
 
Deep dive into share point framework webparts
Deep dive into share point framework webpartsDeep dive into share point framework webparts
Deep dive into share point framework webpartsPrabhu Nehru
 

Similaire à Build your Business Services using ADF Task Flows (20)

ADF Taskflows for beginners
ADF Taskflows for beginnersADF Taskflows for beginners
ADF Taskflows for beginners
 
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
 
Lightning Design System and Components for Visualforce Developers
Lightning Design System and Components for Visualforce DevelopersLightning Design System and Components for Visualforce Developers
Lightning Design System and Components for Visualforce Developers
 
Customizing Oracle EBS OA Framework
Customizing Oracle EBS OA FrameworkCustomizing Oracle EBS OA Framework
Customizing Oracle EBS OA Framework
 
Introduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task FlowsIntroduction to Oracle ADF Task Flows
Introduction to Oracle ADF Task Flows
 
Spark Workflow Management
Spark Workflow ManagementSpark Workflow Management
Spark Workflow Management
 
Adf & Jdeveloper overview
Adf & Jdeveloper overviewAdf & Jdeveloper overview
Adf & Jdeveloper overview
 
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
 
[20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team][20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team]
 
Apache Airflow
Apache AirflowApache Airflow
Apache Airflow
 
Apache Airflow
Apache AirflowApache Airflow
Apache Airflow
 
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...
 
Dataflow.pptx
Dataflow.pptxDataflow.pptx
Dataflow.pptx
 
Web app job and functions - TUGAIT 2017
Web app job and functions  - TUGAIT 2017Web app job and functions  - TUGAIT 2017
Web app job and functions - TUGAIT 2017
 
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...
Integrating Social Apps with Content Driven Sites using Apache Rave and Sprin...
 
Progressive web applications
Progressive web applicationsProgressive web applications
Progressive web applications
 
Angular2 routing
Angular2 routingAngular2 routing
Angular2 routing
 
Itb2018 integrating mvc into legacy
Itb2018   integrating mvc into legacyItb2018   integrating mvc into legacy
Itb2018 integrating mvc into legacy
 
Play with azure functions
Play with azure functionsPlay with azure functions
Play with azure functions
 
Deep dive into share point framework webparts
Deep dive into share point framework webpartsDeep dive into share point framework webparts
Deep dive into share point framework webparts
 

Plus de DataNext Solutions

Getting Started with Web Services
Getting Started with Web ServicesGetting Started with Web Services
Getting Started with Web ServicesDataNext 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
 
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
 

Plus de DataNext Solutions (6)

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
 
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
 
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
 

Dernier

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Dernier (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Build your Business Services using ADF Task Flows

  • 1. Build Your Business Services using ADF Task Flows Zeeshan Baig, Oracle ACE Technical Manager, AST Corporation www.astcorporation.com
  • 2. 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
  • 3. ● 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
  • 4. What are task flows their types and other concepts?
  • 5. 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?
  • 6. Un Bounded Entry Points Types of Task flows Bounded Entry Points Exit Points Exit Points
  • 7. 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
  • 8. ● 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
  • 10. 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
  • 11. 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
  • 12. ● 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
  • 13. Task flow Managed Bean Scopes
  • 15. 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
  • 16. 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
  • 17. 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.
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. Task flow Components ● Allow to restore application to previous state ● Supports Save for later functionality ● Only required where Restore needed
  • 22. 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
  • 23. ● 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
  • 26. ● 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
  • 27. ● 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
  • 28. ● Typical Home page - Calling Task Flows from Task Flows Building Task flows as Services
  • 29. ● Common Flow - Search, Edit , Commit or Rollback Building Task flows as Services
  • 30. ● Service Flow - Add new Item while entering data on other screen Building Task flows as Services
  • 31. ● Service Flow - Upload Photos, Review and Submit Building Task flows as Services
  • 32. ● Decision Point - Based on UserType Parameter Redirect to different Page Building Task flows as Services
  • 33. ● Parameterized Task Flow - Multi-functional, Hide/show components based on parameters Building Task flows as Services
  • 34. ● URL call flow - Calling Registration, Profile Flows using URL call, Independent transaction Building Task flows as Services
  • 35. ● Registration Process – Train, Method calls Building Task flows as Services
  • 36. ● Shopping Cart Check out – Reconcile, Review, Submit, Continue Building Task flows as Services
  • 37. ● Learned about Task Flows ● Bounded and Unbounded Task Flows ● Page Fragments, Managed Beans, Templates ● ADF Library Jars, Components of Task flows ● Use cases Review
  • 38. Q & A
  • 39. ● BLOG http://baigzeeshan.com ● YouTube Channel http://youtube.com/baigsorcl ● Email zeeshan.baig82@gmail.com ● Twitter @baigsorcl Thank you, Task Flow Experts….