+ All Categories
Home > Documents > Jdev Forms

Jdev Forms

Date post: 05-Apr-2018
Category:
Upload: study20
View: 214 times
Download: 0 times
Share this document with a friend

of 32

Transcript
  • 7/31/2019 Jdev Forms

    1/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Old Forms developers neverOld Forms developers never

    die, they just switch todie, they just switch toJDeveloperJDeveloper

    ((JDeveloper ADF Faces forJDeveloper ADF Faces forOracle Dinosaurs)Oracle Dinosaurs)

    SAGE Computing ServicesSAGE Computing ServicesCustomised Oracle Training WorkshopsCustomised Oracle Training Workshops

    and Consultingand Consultingwww.sagecomputing.com.auwww.sagecomputing.com.au

    Penny Cookson - Managing Director

    Ray Tindall Senior Consultant

    Chris Muir Senior Consultant

  • 7/31/2019 Jdev Forms

    2/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    HistoryHistoryForms JDEV

    Mar 1998 Initial version

    Apr 1999 Early release of the BC4Jframework

    Nov 1999 Full release of the BC4J framework

    May 2002 New IDE shell released, with bettersupport for JSPs

    UIX and modelling tools provided

    Mar 2004 Upgraded to use JDK 1.4

    Apr 2004 ADF framework included

    BC4J becomes ADF businesscomponents

    More modellers and visual editing

    tools added

    End 2005 ADF Faces support

    1985 Forms 1 answer the INPquestions

    1987 Forms 2 with a Characterbased interface

    1990 Forms 3 with PL/SQL

    1993 Forms 4.0 - Least said thebetter

    1995 Forms 4.5 GUI version

    1998 Forms 5 + browser version

    2006 Not much change sinceForms 5

  • 7/31/2019 Jdev Forms

    3/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    OracleOracle JDevJDev QuotesQuotes

    A stranger is a friendyou have yet to meet

    an axe murderer

  • 7/31/2019 Jdev Forms

    4/32www.sagecomputing.com.auwww.sagecomputing.com.au

    FeaturesFeatures

    Code Editors for editing Java, XML, PLSQL and other source code, withfeatures such as syntax highlighting, code templates, standardreformatting etc.

    UI Design Editors WYSIWYG design editors for developing user interfaces,including Swing, and web page technologies such as JSF, JSPand HTML

    Diagrammer for modelling Java classes, ADF Business Components, Javasequence diagrams, UML and Use Case diagrams.

    Database Development for modelling and editing connected databases, as well asproviding database connection information for your Javaapplications.

    Wizards a large set of wizards to simplify the development process.

    Debugger a comprehensive debugger, including support for conditionalbreakpoints

    Code Profiling to profile the memory and CPU usage of your code.

    Refactoring support for refactoring code with the ability to change code

    names and all references to the codeIntegrated Change Control integration with CVS change control repository.

  • 7/31/2019 Jdev Forms

    5/32www.sagecomputing.com.auwww.sagecomputing.com.au

    ModelModel ViewView -- ControllerController

    Modelrepresents persistent business data

    coupled with business logic

    Viewuser interface (UI) representation of

    dynamic models content

    Controllerresponds to UI events executed by the user

    communicates to the model layer

    controls page flow.

    Presentationlayer

  • 7/31/2019 Jdev Forms

    6/32www.sagecomputing.com.auwww.sagecomputing.com.au

    Where ADF Faces FitsWhere ADF Faces Fits

    ADF BCView

    Objects

    ADF BCView

    Objects

    JSPJSP

    StrutsStruts

    JavaClasses

    JavaClasses

    ADF BusinessComponentsApplication

    Module

    ADF BusinessComponentsApplication

    Module

    WebServices

    WebServices

    JDBCJDBC TopLinkQueries

    TopLinkQueries

    Java

    Classes

    Java

    Classes ADF BCEntity

    Objects

    ADF BCEntity

    ObjectsTopLink MappingTopLink Mapping

    EJB SessionBeans

    EJB SessionBeans

    ADF BindingsADF Bindings

    EJBFinders

    EJBFinders

    EJB

    EntityBeans

    EJBEntityBeans

    Business ServiceObjects

    Data Access

    PersistentBusiness Objects

    View

    Controller

    ADF Model

    Business Services

    Web/Wireless

    JSFJSF

    Rich Client

    UIXUIX

    ADF SwingADF Swing

    SwingSwing

    ADF FacesADF Faces

    JSFJSF

  • 7/31/2019 Jdev Forms

    7/32www.sagecomputing.com.auwww.sagecomputing.com.au

    Model/Business ServicesModel/Business ServicesJDeveloper ADF Oracle Forms

    ADF Business ComponentsADF Business Components

    Data ModelData Model

    ApplicationModules

    ApplicationModules

    View ObjectsView Objects View LinkView Link

    Business DomainBusiness Domain

    EntityObjects

    EntityObjects

    EOAssociations

    EOAssociations

    DomainsDomains

    Constraints

    Forms Block

    Database Procedure mapsforms items to databaseobjects

    Forms block SQLmapped directly todatabase table

    Data source and targetDatabase properties of block

    Forms records in memory waiting to becommitted + DML trigger code

    Constraints

  • 7/31/2019 Jdev Forms

    8/32www.sagecomputing.com.auwww.sagecomputing.com.au

    Model View ControllerModel View ControllerJDeveloper ADF Oracle Forms

    Forms Block

    Data source and targetDatabase properties of block

    Forms records in memory waiting to becommitted + DML trigger code

    Java UI Renderer

    PL/SQL NavigationLogic

    Display propertiesADF Bindings

    Controller JSF

    View - ADF Faces / ADF Swing

    ADF Business ComponentsADF Business Components

    Data ModelData Model

    ApplicationModules

    ApplicationModules

    View ObjectsView Objects View LinkView Link

    Business DomainBusiness Domain

    EntityObjectsEntity

    ObjectsEO

    AssociationsEO

    AssociationsDomainsDomains

    Database

    Database

  • 7/31/2019 Jdev Forms

    9/32www.sagecomputing.com.auwww.sagecomputing.com.au

    ApproachesApproaches

    Database developers Web developers

    1. Develop a database schema.

    2. In JDeveloper create an

    application workspace.3. Create business services and

    model layer using for exampleADF Business Components.

    4. Implement view and controllerlayers using for example ADFFaces.

    5. Test, debug and deploy theapplication.

    1. Create an application workspace.

    2. In the ADF Faces web-page

    diagrammer, define your web pagesand page flow.

    3. Create business services and themodel layer to support the view

    layer.4. Generate database schema objects

    based on the model layer.

    5. Test, debug and deploy theapplication.

  • 7/31/2019 Jdev Forms

    10/32www.sagecomputing.com.auwww.sagecomputing.com.au

    ADF Business ComponentsADF Business Components

    No UI specific elements

    No application flowMap to data

    Handle persistence

    Hooks for business rulesUI exposed objects data model

    Application modules

    View objects

    View links

    Business domainEntity objects generally 1 to 1 with table

    EO associationsDomains

  • 7/31/2019 Jdev Forms

    11/32www.sagecomputing.com.auwww.sagecomputing.com.au

    Creating Entity ObjectsCreating Entity Objects

  • 7/31/2019 Jdev Forms

    12/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    OO?OO?

    OrganisationsEntity Object

    OrganisationsTable

    ADF Business Components 1 to 1 with table

    You could use EJB or Toplink insteadFuture version will allow ADF Businesscomponents based on Toplink data mapping?

  • 7/31/2019 Jdev Forms

    13/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Entity Objects / View ObjectsEntity Objects / View Objects

    Think of a Form with

    A From clause query as its sourceA procedure/table as its data target

    OrganisationsView Object

    Organisations Table

    OrganisationsEntity Object

    SQL

    OrganisationsData Source

    Organisations Table

    OrganisationsData Target

    SQL

  • 7/31/2019 Jdev Forms

    14/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Entity ObjectEntity Object

    XML has dataXML has datadefinitionsdefinitions

  • 7/31/2019 Jdev Forms

    15/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    View ObjectView Object

    XML has SQLXML has SQLdefinitiondefinition

  • 7/31/2019 Jdev Forms

    16/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    So Many FilesSo Many Files

    Application workspace

    Project

    Workspace.jws

    Project.jpr

    Entity Objects

    Asociations

    View Objects

    Links

    Application Module

    Organisations.xml , Organisationsimpl.java

    OrgParentFkAssoc.xml

    OrganisationsView.xml, OrganisationsViewImpl.java

    OrgParentFkLink.xml

    AppModule.xml, AppModuleImpl.java

  • 7/31/2019 Jdev Forms

    17/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    OracleOracle JDevJDev QuotesQuotes

    Your tentative steps into theJ2ee world will have thrownup a whole host of strangeand unfamiliar terms,

    "persistence", "frameworks","view and entity objects,"events"

    Your tentative steps into theJ2ee world will have thrown up a

    whole host of strange andunfamiliar terms, "help","I am too old for this stuff", and

    "What the ****"

  • 7/31/2019 Jdev Forms

    18/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    How They WorkHow They Work

    JDeveloperDefinitionsstored inXML files

    PredefinedJava classesaccessdefinitions

    Java classesextend defaultclasses torepresent runtimeinstances

    Create and Maintain

  • 7/31/2019 Jdev Forms

    19/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Application tabApplication tabdisplaysdisplays

    logical viewlogical view

  • 7/31/2019 Jdev Forms

    20/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    System tabSystem tab

    displaysdisplaysphysical viewphysical view

  • 7/31/2019 Jdev Forms

    21/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Forms Data MappingForms Data Mapping

    EVT_PKpackage

    EVENTS_VW

    View

    EVENTS

    table

  • 7/31/2019 Jdev Forms

    22/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Binding LayerBinding Layer

    Web PageWeb Page

    Event No

    Organisations Sage

    100

    Booking No Quantity Cost

    1205 1 200

    1206 20 420

    1207 1 200

    Commit

    Binding ContextBinding Context

    Binding ContainerBinding Container

    Action BindingAction Binding

    EventsIteratorBinding

    EventsIteratorBinding

    Value BindingValue Binding

    BookingsIteratorBinding

    BookingsIteratorBinding

    RangeBinding

    RangeBinding

    DataControlDataControl

    BusinessServices

    BusinessServices

    Events

    VO

    BookingsVO

    OrgsVO

    OrgsIterator

    Binding

    OrgsIteratorBinding

    ListBinding

    ListBinding

    Next Action BindingAction Binding

    Action BindingAction BindingPrevious

    Provides abstraction of business serviceimplementation

  • 7/31/2019 Jdev Forms

    23/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

  • 7/31/2019 Jdev Forms

    24/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    ADF FacesADF Faces

    Implementation of the JSF specification

    Standard look and feel UI components, suited fordatabase 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 clientsIntegrates with the ADF Model Layer

    C

  • 7/31/2019 Jdev Forms

    25/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Component TreeComponent Tree

    GG hi l I f

  • 7/31/2019 Jdev Forms

    26/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Graphical InterfaceGraphical Interface

    C P lC t P l tt

  • 7/31/2019 Jdev Forms

    27/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Component PaletteComponent Palette

    C llC t ll

  • 7/31/2019 Jdev Forms

    28/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    ControllerController

    C t llC t ll

  • 7/31/2019 Jdev Forms

    29/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    ControllerController

  • 7/31/2019 Jdev Forms

    30/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    O lOracle JDJDe Q tQ otes

  • 7/31/2019 Jdev Forms

    31/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    OracleOracle JDevJDev QuotesQuotes

    Oracle Developer supportsevery phase of the

    development lifecycleincluding modeling ,coding,debugging, testing, tuning,and deploying

    Oracle Developer supports everyphase of the developmentlifecycle including

    overconfidence, modeling,coding, debugging, testing,panicking, tuning, allocatingblame, deploying, and distancingyourself from the whole thing

    Thank You

  • 7/31/2019 Jdev Forms

    32/32

    www.sagecomputing.com.auwww.sagecomputing.com.au

    Thank You

    For Your Attention

    SAGE Computing ServicesSAGE Computing ServicesCustomised Oracle Training WorkshopsCustomised Oracle Training Workshops

    and Consultingand Consulting

    www.sagecomputing.com.auwww.sagecomputing.com.au

    [email protected]


Recommended