What is Oracle ADF?

8:58 PM Hendry 0 Comments


What is Oracle ADF?

Oracle ADF provides a commercial Java framework for building enterprise applications. It provides visual and declarative approaches to Java EE development.

Oracle ADF Architecture

Oracle ADF is based on Model-View-Controller (MVC) design pattern.


1.    Model à provides an abstraction layer on top of the Business Service layer, enabling the View and Controller layers to work with different implementations of Business Services in a consistent way.
2.    View à handles the application user interface.
3.    Controller à manages the application flow and acts as the interface between Model and View layers. To provide a mechanism to control the flow of the Web application.
4.    Business Service à oracle ADF further separates the Model layer to enable service-oriented development of applications. To provide access to data from various sources and handles business logic.

The Business Service Layer

The Business Services layer manages interaction with a data persistence layer. It provides such services as data persistence, object/relational mapping, transaction management, and business logic execution.
The Business Services layer in Oracle ADF can be implemented in any of the following options: As simple Java classes, EJB, Web services, JPA objects, and Oracle ADF Business Components. In addition, data can be consumed directly from files (XML or CSV) as well as REST.

The Conroller Layer

The controller layer manages the applications flow and handles user input.
For example, when you click a Search button on a page, the controller determines what action to perform (do a search) and where to navigate to (the results page).
There are two controller options for web-based applications in JDeveloper: the standard JSF controller or the ADF Controller which extends the JSF controller functionality. Whichever controller you use, you will typically design your application flow by laying out pages and navigation rules on a diagram. With the ADF controller you can break your application's flow into smaller, reusable task flows; include non-visual components such as method calls and decision points in your flow; and create "page fragment" flows that run inside a region of a single containing page. This approach encourages maximum reusability for user interface fragments and simplified integration into portals and mashup applications.

The View Layer

The View layer represents the user interface of the application.
Oracle ADF support multi-channel access to your business services allowing you to reuse your business services and access them from a Web client, a client-server swing desktop based application, Microsoft Excel spreadsheets, or a mobile devices such as a smart-phone.
For Web based interface Oracle ADF offers a rich set of over a 150 Ajax enabled JSF components that simplified the creation of dynamic and appealing user interfaces.

The Model Layer

The model layer connects the business services to the objects that use them in the other layers.
Oracle ADF provides a model layer implementation that sits on top of business services, providing a single interface that can be used to access any type of business service.
The model layer consists of two components, data controls and data bindings, which utilize metadata files to define the interface.
·         Data controls à abstract the business service implementation details from Oracle White Paper—Oracle Application Development Framework Overview 6 clients.

·         Data bindings à expose data control methods and attributes to UI components, providing a clean separation of the view and model. Due to the metadata architecture of the model layer, developers get the same development experience when binding any type of Business Service layer implementation to the View and Controller layers.

Download What is Oracle ADF.pdf


Reference: http://www.oracle.com/technetwork/developer-tools/adf/adf-11-overview-1-129504.pdf