• What is JHeadstart?
• Demo: JHeadstart Forms2ADF Generator
• Demo: Modifying migration result
• Demo: OraFormsFaces
• Case Studies
Before we start – Define a Forms
modernization strategy!
• Where are we now?
• Analyze current situation
• Where do we want to go?
• Identify top business drivers / business benefits
• How do we want to go?
• Identify and choose modernization options
• What do we need to do when and with whom?
• Define modernization approach/timeline/project plan
What is JHeadstart?
ADF BC
ADF BC ADF Model
ADF Model
metadata
metadata
Data Bindings
Data Bindings Model
Data Controls
Data Controls
ADF
ADF
ADF Business
ADF
Business
Business
Business
Business Services
Components
Components
Components
Components
JDeveloper
ADF BC Wizard
Application
Application
Definition
Definition
ADF BC
ADF BC ADF Model
ADF Model
metadata
metadata
Data Bindings
Data Bindings Model
Data Controls
Data Controls
ADF
ADF
ADF Business
ADF
Business
Business
Business
Business Services
Components
Components
Components
Components
JDeveloper
ADF BC Wizard
Application
Application Generator
Generator Generation
Definition
Definition Templates
Templates
Process
JHeadstart JSF
JSF JSP
JSF JSP
JSF JSP
JSP
ADF Faces View
Application ADF
ADF Faces
ADF Faces
Faces
Definition
Wizard
JSF
JSF Controller
JSF+ADFc
JSF+ADFc
ADF BC
ADF BC ADF
ADF Model
ADF Model
ADF Model
Model
metadata
metadata JHeadstart
Data
Data Bindings
Data Bindings Model
Application Data Bindings
Bindings
Generator Data
Data Controls
Data Controls
Controls
Data Controls
ADF
ADF
ADF Business
ADF
Business
Business
Business
Business Services
Components
Components
Components
Components
JDeveloper
ADF BC Wizard
Forms2ADF
Application
Application
Definition
Definition Generation
Process
Form
Form
(.fmb) JSF JSP
JSF JSP
Form
(.fmb) ADF Faces
Faces View
Form ADF
(.fmb)
(.fmb)
JSF ++ ADFc
JSF ADFc Controller
ADF Model
ADF Model
Data Bindings
Data Bindings Model
Data Controls
Data Controls
JHeadstart
Forms2ADF ADF
ADF
ADF Business
ADF
Business
Business
Business Services
Generator Business
Components
Components
Components
Components
Application
Application Generation
Definition
Definition
Process
Form
Form
(.fmb) JSF JSP
JSF JSP
Form
(.fmb) ADF Faces
Faces View
Form ADF
(.fmb)
(.fmb)
JSF
JSF Controller
ADF Model
ADF Model
Data Bindings
Data Bindings Model
Data Controls
Data Controls
JHeadstart
ADF
ADF
Forms2ADF ADF
ADF
Business
Business
Business
Business Services
Generator Business
Components
Components
Components
Components
Forms2ADF
Application
Application Generator
Generator
Definition
Definition Templates
Templates Generation
Process
Form
Form
(.fmb) JSF
JSF JSP
JSF JSP
JSP
Form
(.fmb) JSF JSP View
ADF
ADF Faces
Faces
ADF Faces
Faces
Form
(.fmb) ADF
(.fmb)
JSF
JSF Controller
JSF+ADFc
JSF+ADFc
ADF
ADF Model
ADF Model
Model
ADF Model
JHeadstart
Data
Data Bindings
Data Bindings Model
Application Data Bindings
Bindings
Generator Data
Data Controls
Data Controls
Controls
Data Controls
JHeadstart
ADF
ADF
Forms2ADF ADF
ADF
Business
Business
Business
Business Services
Generator Business
Components
Components
Components
Components
D E M O N S T R A T I O N
Forms2ADF
Generator
Architecture OCM Demo
Web Browser
JSP JSF
CDM RuleFrame
Oracle10g
Data Database
JHeadstart Forms2ADF Generator
Modifying Migration
Results
JHeadstart Uses Best Practice ADF
Design Patterns
• “One-page” application (UIShell)
• Generated bounded task flows use page fragments and can be
embedded as ADF region in page
• One page with dynamic region driven by application menu
• Generated task flows are highly reusable
• Use with traditional menu structure
• Use with dynamic tabs
• Use in handbuilt drag-and-drop pages
• Use as child within another region
• Use with human workflow task list
• Use as popup / list of values
• Use as WebCenter portlet
• Add at runtime using WebCenter Composer
JHeadstart Uses Best Practice ADF
Design Patterns
• Generated task flows are highly configurable
• Configure to start in create mode (new row)
• Configure to show one specific row (deeplinking)
• Configure to go to summary or detail page
• Configure to hide action buttons (Save, Cancel, Nav. Buttons)
• Configure to hide search region
• Configure to show in read-only mode
• Generates layout best practices
• Easy switching between stretching and non-stretching layouts
• Region interaction design patterns are auto-
implemented
Configurable TaskFlows Generated
• Taskflow Template Parameters
• Taskflow Parameters
Configurable Task Flows Generated
JHeadstart Superior Productivity – In
Many Ways
• Saves you months to figure out ADF best practices
• Saves you months with ready-to-use reusable
components
• Maximizes reuse
• JAG is actually RTG: Reusable Taskflows Generator
• Facilitates agile development
• Start with generating functional prototypes that evolve into
working system
• Eases upgrade to new JDeveloper releases
• Technology-agnostic metadata layer!
<Insert Picture Here>
OraFormsFaces
OraFormsFaces
OraFormsFaces
Integration JHeadstart - OraFormsFaces
Setting up Deeplinking between ADF
Page and Oracle Form
Setting up Deeplinking between ADF
Page and Oracle Form
Setting up Deeplinking between ADF
Page and Oracle Form
Integration JHeadstart – OraFormsFaces
Deeplinking JSF Page and Oracle Form
Integration JHeadstart – OraFormsFaces
Deeplinking JSF Page and Oracle Form
<Insert Picture Here>
Forms2ADF Case
Studies
Finland - Financial Institution
• Why Forms2ADF
• Performance problems with Forms over WAN
• Problems with Java applet due to different Java versions in
browser
• Architecture Forms App
• Simple user interface
• Complex data retrieval: DB procs populate temp tables or
record groups
• Complex data manipulation through DB procs
• Complex mexhanism to call reports through DBMS_PIPE with
polling mechanism
• Added Value JHeadstart Forms2ADF Generator
• None
Finland - Financial Institution
• Why Forms2ADF
• Wants to add self service capabilities to core app
• Wants modern user interface
• Architecture Forms App
• Complex user interface, many tabs, many items on canvas
• Standard data retrieval and manipulation
• Most business logic in database
• Added Value JHeadstart Forms2ADF Generator
• Business Components auto-created based on forms
definitions (1 form resulted in 162 business components)
• Migrated metadata strongly modified to generate new user
interface
Netherlands – Government IT
Department
• Why Forms2ADF
• Forms 4.5 and DB 8.1.7 no longer supported
• System integration dificult because of old/obsolete technology
• Character-based user interface, end users complain
• High maintenance cost
• Hard to find resources skilled with older Forms versions
• Architecture Forms App
• Character-based 24*80 screens
• Standard data retrieval and manipulation
• Most business logic in forms
• Added Value JHeadstart Forms2ADF Generator
• Business Components auto-created based on forms definitions,
inclusing UI labels derived from boilerplate text
• Migrated screens generated with minor changes to metadata
• Amount of UI redesign to be decided
Netherlands – Government IT
Department
• Migrated ADF 11 prototype used to create
enthousiasm and gain credibility in organisation
• Existing Forms developers keen to learn ADF
• JHeadstart Migration Estimating Utility generates
excel sheet with estimates based on forms
characteristics
• Used to provide insight in total migration effort
Forms2ADF - Recommendations