This FAQ addresses frequently asked questions relating to Oracle Application
Development Framework.
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.
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.
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.
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.
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.
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)
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.
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.
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.
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.
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.
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
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.