Tuesday, May 19, 2015

The ORACLE ADF architecture

ADF is designed to simplify the development of web applications, desktop applications
(MS Office), and mobile applications. It is focused on giving a visual and declarative approach
to building applications based on the common MVC pattern. This architecture is targeted at
providing a service-based, loosely coupled solution with the following five layers:
‹ Business Service: This layer is responsible for handling the interactions between the
database and the model layer by providing database persistence, object/relational
mapping, managing transactions, and so on. Business logic is also taken care of in
this layer. ADF Business Components are the first choice to develop the business
service layer apart from Java, EJB, and web services.
‹ Model: This layer is on top of the business service layer and abstracts the business
services exposed to the view layer. The Data Controls palette acts as an interface
between the view and the business services layers. Data bindings map the exposed
services to the UI components. The data control and data binding approaches are
collectively represented as ADF Model based on JSR 227 (Java Specification Request).
‹ Controller: The navigation from one page to another is handled in this layer using
the ADF task flow. Its reusability along with parameter passing, a single point of
entry, and allowing re-entry are the highlights of using the ADF task flow. The other
technology choice in this layer can be JSF Struts.
‹ View: This is the actual presentation layer facing the user directly and passing the
inputs to the controller layer for processing. ADF Faces is used for this purpose.
ADF Faces uses more than 150 rich components to support the development of
competing web user interfaces. ADF Faces is based on JSF, which allows JSF as the
second choice for UI development. ADF Desktop Integration will also act as a view
layer for standalone applications.
‹ Metadata services: Customization and personalization of the application is done
using the metadata services framework that uses metadata to store and retain user
session information. This is not an architectural layer but an additional service layer
on top of the controller and the model layers.
The following diagram shows how ADF layers fit into the Model-View-Controller architecture:

No comments:

Post a Comment