Old Forms Developers Never Die, They Just Switch To Jdeveloper Jdeveloper Adf Faces For Oracle Dinosaurs)
Old Forms Developers Never Die, They Just Switch To Jdeveloper Jdeveloper Adf Faces For Oracle Dinosaurs)
Old Forms Developers Never Die, They Just Switch To Jdeveloper Jdeveloper Adf Faces For Oracle Dinosaurs)
www.sagecomputing.com.au
History
Forms
1985 Forms 1 answer the INP questions Forms 2 with a Character based interface Forms 3 with PL/SQL Forms 4.0 - Least said the better Mar 2004 1995 Forms 4.5 GUI version Apr 2004 Upgraded to use JDK 1.4 ADF framework included BC4J becomes ADF business components 1998 2006 Forms 5 + browser version Not much change since Forms 5 More modellers and visual editing tools added End 2005 ADF Faces support Mar 1998 Apr 1999 Nov 1999
JDEV
Initial version Early release of the BC4J framework Full release of the BC4J framework
1987
1990 1993
May 2002 New IDE shell released, with better support for JSPs UIX and modelling tools provided
www.sagecomputing.com.au
www.sagecomputing.com.au
Features
Code Editors for editing Java, XML, PLSQL and other source code, with features such as syntax highlighting, code templates, standard reformatting etc. WYSIWYG design editors for developing user interfaces, including Swing, and web page technologies such as JSF, JSP and HTML for modelling Java classes, ADF Business Components, Java sequence diagrams, UML and Use Case diagrams. for modelling and editing connected databases, as well as providing database connection information for your Java applications. a large set of wizards to simplify the development process. a comprehensive debugger, including support for conditional breakpoints to profile the memory and CPU usage of your code. support for refactoring code with the ability to change code names and all references to the code integration with CVS change control repository.
UI Design Editors
www.sagecomputing.com.au
View
user interface (UI) representation of dynamic models content
Controller
responds to UI events executed by the user communicates to the model layer controls page flow.
Presentation layer
www.sagecomputing.com.au
View
Struts Struts
JSF JSF
Controller
ADF Model
Business Service Objects
ADF Business ADF Business Components Components Application Application Module Module
JDBC JDBC
TopLink EJB TopLink EJB Queries Finders Queries Finders EJB EJB Entity Entity Beans Beans
ADF BC ADF BC View View Objects Objects ADF BC ADF BC Entity Entity Objects Objects
Data Access
Business Services
Persistent Business Objects
www.sagecomputing.com.au
Model/Business Services
JDeveloper ADF
ADF Business Components ADF Business Components Data Model Data Model Application Application Modules Modules View Objects View Objects View Link View Link Data source and target Database properties of block
Oracle Forms
Forms Block
Business Domain Business Domain Entity Entity Objects Objects EO EO Associations Associations Domains Domains Forms records in memory waiting to be committed + DML trigger code Database Procedure maps forms items to database objects Forms block SQL mapped directly to database table
Constraints
www.sagecomputing.com.au
Constraints
Oracle Forms
Java UI Renderer
Controller JSF
Forms Block Display properties ADF Bindings ADF Business Components ADF Business Components Data Model Data Model Application Application Modules Modules View Objects View Objects View Link View Link Forms records in memory waiting to be committed + DML trigger code Domains Domains
Business Domain Business Domain Entity Entity Objects Objects EO EO Associations Associations
Database Database
www.sagecomputing.com.au
Approaches
Database developers
1. Develop a database schema. 2. In JDeveloper create an application workspace. 3. Create business services and model layer using for example ADF Business Components. 4. Implement view and controller layers using for example ADF Faces. 5. Test, debug and deploy the application.
Web developers
1. Create an application workspace. 2. In the ADF Faces web-page diagrammer, define your web pages and page flow. 3. Create business services and the model layer to support the view layer. 4. Generate database schema objects based on the model layer. 5. Test, debug and deploy the application.
www.sagecomputing.com.au
Business domain
Entity objects generally 1 to 1 with table EO associations Domains www.sagecomputing.com.au
www.sagecomputing.com.au
OO?
Organisations Table
ADF Business Components 1 to 1 with table You could use EJB or Toplink instead Future version will allow ADF Business components based on Toplink data mapping?
www.sagecomputing.com.au
SQL
Organisations Data Target
SQL
Organisations Table
www.sagecomputing.com.au
www.sagecomputing.com.au
So Many Files
Application workspace Workspace.jws
Project
Project.jpr
www.sagecomputing.com.au
Your tentative steps into the Your tentative steps into the J2ee world will have thrown up a J2ee world will have thrown whole host of strange and up a whole host of strange unfamiliar terms,terms, and unfamiliar "help", "I "persistence", "frameworks", am too old for this stuff", and "What the ****" "view and entity objects, "events"
www.sagecomputing.com.au
www.sagecomputing.com.au
www.sagecomputing.com.au
EVENTS table
EVT_PK package
www.sagecomputing.com.au
Binding Layer
Web Page Web Page Binding Context Binding Context
Binding Container Binding Container
Event No
100
Events VO
Organisations
Sage
Next Previous
Bookings Bookings Iterator Iterator Binding Binding Action Binding Action Binding Action Binding Action Binding
Commit
www.sagecomputing.com.au
ADF Faces
Implementation of the JSF specification Standard look and feel UI components, suited for database data representation, such as date pickers, advanced tables and colour Client side validators and converters Accessibility and multilingual support Efficient implementation of client-side state saving, reducing per-component state saving size Partial Page Rendering (PPR) Extended Faces tags Different render kits to display on mobile phones, PDAs, and telnet clients Integrates with the ADF Model Layer
www.sagecomputing.com.au
Component Tree
www.sagecomputing.com.au
Graphical Interface
www.sagecomputing.com.au
Component Palette
www.sagecomputing.com.au
Controller
www.sagecomputing.com.au
Controller
www.sagecomputing.com.au
www.sagecomputing.com.au
Oracle Developer supports every Oracle the development phase ofDeveloper supports every phase of the lifecycle including development lifecycle overconfidence, modeling including modeling ,coding, ,coding, debugging, testing, debugging, testing, tuning, panicking, tuning, allocating and deploying blame, deploying, and distancing yourself from the whole thing
www.sagecomputing.com.au