OTN Logo

FAQ"

 Oracle Application Development Framework

 August 2005

Introduction

This FAQ addresses frequently asked questions relating to Oracle Application Development Framework.


  1. What is Oracle Application Development Framework (ADF)?
    Oracle ADF is a comprehensive productivity layer for J2EE developers. It simplifies building applications as a set of business services with Web, Wireless, and Rich Client interfaces. ADF accelerates development with ready-to-use J2EE Design Pattern implementations and metadata-driven components that you'd otherwise have to code, test, and debug by hand. Since its implementation is based on standards and its features embody years of experience from Oracle's own business application developers, your ADF-powered applications are high-performance, well-architected, and portable.

    Oracle JDeveloper 10g includes integrated visual design tools for ADF, providing a single environment to model, test, debug, tune, maintain, deploy, and version all of the layers of your J2EE application. Oracle ADF provides a flexible, end-to-end application infrastructure that accommodates your technology choices in each architectural layer, and Oracle JDeveloper 10g offers drag and drop ease of use throughout the lifecycle, giving you productivity with choice.

  2. What are the key features of Oracle ADF?
    As illustrated in Figure 1, Oracle ADF provides time-saving functionality in all four architectural layers of your J2EE business applications:

    • Business Services

      The ADF Business Components technology provides declarative building blocks you can use to implement scalable business services, data access objects, and business objects that enforce business rules and handle database persistence.

    • Model

      The ADF Model layer provides consistent, declarative data-binding against a multiple backend technologies accommodating business services implemented as ADF Application Modules, custom JavaBeans, EJB's, and Web Services.

    • View

      The ADF UIX technology provides declarative page definition and a rich UI component set for HTML and wireless UI's, complementing ADF's support for JSP pages and JSP tag libraries like JSTL, Jakarta Struts, ADF DataTags, and others. The ADF JClient layer dovetails with Swing to simplify building sophisticated rich client UI's. As highlighted in the ADF UIX Roadmap, in the future the ADF UIX technology will change to use the standard JavaServer Faces (JSF) API's, and the ADF UIX components will evolve to become the ADF Faces components. An early adopter release of ADF Faces is available for download on OTN.

    • Controller

      Integrated support for Apache/Jakarta Struts allows data-binding and business services to work seamlessly with this popular controller-layer framework.














  1. Figure 1: Oracle ADF Application Architecture

    All layers of the Oracle ADF framework offer declarative options for development, configured from XML metadata, while accommodating custom coding wherever necessary. You can choose to use all or part of the framework in the applications you build.


  2. What support for Rapid Application Development (RAD) comes with Oracle JDeveloper 10g and Oracle ADF?

    While Oracle JDeveloper 10g offers a consolidated, more flexible runtime framework with Oracle ADF, it also contains an enhanced design time environment that offers a consistent and end-to-end visual development experience. Key features supporting rapid application development include:

    • A visual editor for HTML, JSP, and uiXML pages lets you design your application's web pages interactively.

    • An application navigator helps developers see all of their application sources in a uniform package organization, and simplifies the view of components with multiple implementation files and deployment descriptors to reduce clutter and improve usability for large application projects.

    • A capability to configure the technology scope of your projects so the environment can tailor its dialogs to present only the options that are relevant to your chosen technology decisions.

    • A database modeler allows you to design, visualize, and document your database schemas.

    • A UML use case diagrammer helps capture application requirements, and enhanced UML modeling support lets you design all EJB's, Web Services, and all key ADF business components visually.

    • A data binding palette allows consistent drag and drop data binding for all client display types.

    • A visual page flow diagrammer for Jakarta Struts lets you build new pages and actions visually and connect them to design the flow of your web user interface.

    All of these design time features, combined with a drag and drop approach to organize all of your windows more easily, make JDeveloper 10g the premier Rapid Application Development tool for J2EE developers, and the only one offering productivity with choice.


  3. Can I Configure JDeveloper to Use Only the Technologies I Prefer?
    Yes, at several levels. As you create and maintain J2EE applications, you configure the list of preferred technologies by customizing your projects' technology scope. JDeveloper uses your preferences to simplify your design time experience. The tool ships with a number of built-in application templates to configure the preferred technologies, as well as project and package naming standards, for the most common types of J2EE solutions. Users new to J2EE can leverage the default templates to get started quickly with the highest level of declarative development. Advanced J2EE users can choose alternative templates for a more do-it-yourself approach, customizing the defaults if needed, or create their own templates to capture their team's preferred solution technologies for future reuse.
  4. What are the different version numbers of JDeveloper 10g and Oracle Application Server 10g and how do they relate to ADF?

    • Oracle JDeveloper 10g (9.0.4) and Oracle Application Server 10g (9.0.4)
      Oracle JDeveloper 10g (9.0.4)contains the BC4J, UIX, and JClient frameworks. The runtime for these frameworks is fully integrated into Oracle Application Server 10g (9.0.4).


    • Oracle JDeveloper 10g (9.0.5)
      Oracle JDeveloper 10g (9.0.5) contains the first release of ADF, as well the ADF Runtime Installer, a utility that enables developers to deploy ADF applications to earlier versions of Oracle Application Server.


    • Oracle JDeveloper 10g release 2 (10.1.2.0.0) and Oracle Application Server 10g Release 2 (10.1.2.0.0)
      Oracle JDeveloper 10g Release 2 (10.1.2.0.0) contains an updated version of ADF, with many bug fixes and performance enhancements. The runtime for this version of ADF is fully integrated into Oracle Application Server 10g Release 2 (10.1.2.0.0)

  5. Can applications built using Oracle ADF be deployed to any J2EE application server?
    Yes. Applications built with Oracle ADF run on any J2EE-compliant application server (including Oracle9iAS, Oracle Application Server 10g, BEA WebLogic, and JBoss). In addition to working with the Oracle and Oracle Lite databases, they can work with non-Oracle databases like IBM DB2, Microsoft SQL Server, and others.

    The document Application Servers Supported by JDeveloper shows the list of application servers certified with JDeveloper and ADF.
  6. What J2EE application deployment architectures can I target if I use Oracle ADF?
    You can use Oracle ADF to build applications that target one or all of the tiers in the J2EE platform using your choice of implementation technologies. Using ADF business components to implement your business services, you gain the additional flexibility to be able to deploy them as JavaBeans, EJB Session Beans, or Web Services at any time without code changes.

  7. How is Oracle ADF related to existing Oracle frameworks like Business Components for Java (BC4J), UIX, and JClient?
    Oracle ADF consolidates Oracle's existing application frameworks and evolves their functionality to a new level of productivity and flexibility. The ADF Business Components and ADF JClient technologies have been internally refactored to cleanly separate the business services features from the data binding features. This means JSP and UIX XML pages, as well as Swing/JClient panels, now all share a common data-binding technology in the ADF Model layer which can work consistently against backend business services of all kinds.

    With this approach, developers get a new, consistent way to do visual data-binding in Oracle JDeveloper 10g and new flexibility to accommodate services implemented as ADF Application Modules, custom JavaBeans, EJB's, and Web Services. These improvements have been implemented with upward compatibility in mind, so applications built using existing, production versions of BC4J, UIX, and JClient just open and run in JDeveloper 10g on top of the enhanced Oracle ADF framework, gaining new visual design time features described above.

  8. Are applications built with earlier releases of Oracle JDeveloper compatible with Oracle ADF?
    Absolutely. Oracle is strongly committed to upward compatibility between earlier JDeveloper releases and the JDeveloper 10g Release 2 (10.1.2.0.0) production release. Applications developed using the BC4J, UIX, and JClient frameworks in previous releases are compatible with Oracle ADF in JDeveloper 10g and can immediately benefit from all of the visual development features detailed above. Applications developed using ADF in JDeveloper 10g (9.0.5) can be opened, compiled and run in JDeveloper 10g Release 2 (10.1.2.0.0) with no migration issues.

    In addition to hundreds of external customers, over 2000 internal applications developers in Oracle's E-Business Suite division have used Oracle's existing frameworks since 1999 to deliver self-service, Web-based business applications on the J2EE platform. While the Oracle JDeveloper 10g design time has evolved considerably to provide an even more end-to-end visual and declarative experience, all the core concepts will be familiar to existing users.

  9. How will Oracle ADF benefit developers using Oracle TopLink?
    Oracle TopLink is one of the many technologies that work well in the Oracle ADF architecture. Developers using TopLink as the persistence architecture for their custom Java classes can leverage the common data-binding features in the ADF Model layer to simplify building JSP, uiXML, and Swing application user interfaces. Using the new visual design time editors in JDeveloper 10g, developers using TopLink can now build web and rich client UI's with drag and drop ease.
  10. Where can I get more information?
    More information about JDeveloper and Oracle ADF is available on the Oracle Technology Network.


Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065

Worldwide Inquiries:
+1.650.506.7000
Fax +1.650.506.7200
http://www.oracle.com/

Copyright � Oracle Corporation 2004
All Rights Reserved

This document is provided for informational purposes only,
and the information herein is subject to change
without notice.  Please report any errors herein to
Oracle Corporation.  Oracle Corporation does not provide
any warranties covering and specifically disclaims any
liability in connection with this document.

Oracle is a registered trademark of Oracle Corporation.

All other company and product names mentioned are used
for identification purposes only and may be trademarks of
their respective owners.