Home

Thursday, June 7, 2012

What is Oracle ADF. Find an overview of oracle ADF Architecture

Oracle ADF (Application Development Framework) is an end-to-end Java EE framework from Oracle that built on top of the MVC based JSF (Java Server Faces) framework. It simplifies
application development by providing out-of-the-box infrastructure
services and providing a visual & declarative development experience. ADF is directly supported and enabled by Oracle JDeveloper IDE. ADF forms the foundation for
WebCenter Portal's components and services.

By using oracle ADF, web applications development, ADF desktop
applications development, Java SOA applications development and adf mobile applications development have become much more fast and productive with new functions.

ADF provides more than 100 data aware JSF view components. ADF Faces includes data visualization components, which are Flash-
and PNG-enabled components capable of rendering dynamic charts, graphs,
gauges, and other graphics that provide a real-time view of underlying
data.

By using oracle ADF, developers
can choose different technologies to implement each of Oracle ADF‘s
layers with same productive development experience.

ADF has JAAS security model which gives facilities to developers and
administrators
full control over all aspects of ADF application security. Developers can define users and roles and assign various authorizations
to them. Privileges can be assigned at the business service layer, the
controller layer or the UI layer

ADF provides declarative customization and personalization of applications according to specific user requirements. A layer called MDS – MetaData
Services – allows developers to customize XML definitions that Oracle
ADF relies on and use different versions for different users. users can personalize the interface of their application.

ADF allows
developers to implement modifications in business rules, page flows,
page layouts and other items that ADF persist in XML format. These
modifications will be applied at run time based on the user that logs
into the application.

You can create your own look and feel by implementing skins for ADF
Faces components. Oracle provides a stand-alone skin editor, where you
can decoratively create and modify your skins.

The ADF Faces framework allows the user to move data from one
location to another by dragging and dropping one component onto another.

The ADF Faces framework includes server-side push that allows you to
provide real-time data updates for ADF Faces components.

ADF has Widespread Ajax support. Many ADF Faces components have ajax-style functionality implemented
natively. For example, the ADF Faces table components allow the sort the table by clicking a column header, selection of one or more rows and even expand specific rows in the
table, this is all done without requiring the page to be submitted to the server. This functionality is implemented
as partial page rendering (PPR).

Oracle ADF (Application Development Framework) architecture

Oracle ADF implements MVC (Model-View-Controller) design patterns and further separates the model layer from the business services to enable service-oriented development of applications. Separating applications into these three layers simplifies maintenance
and reuse of components across applications. The independence of each
layer from the others results in a loosely coupled, Service Oriented
Architecture (SOA).

The Oracle ADF architecture is consist on following four layers:

The Business Services layer - provides access to data from various sources and handles business logic.

The Model layer - provides an abstraction layer on top of the Business Services layer, enabling the View and Controller layers to work with different implementations of Business Services in a consistent way.

The Controller layer - provides a mechanism to control the flow of the Web application.

The View layer - provides the user interface of the application.

Oracle ADF lets developers choose
the technology they prefer to use when implementing each of the layers.
The ADF diagram showing above, shows various options provided for developers
when building Oracle ADF applications. Oracle ADF model Layer integrates the various components of Java EE applications which makes the applications development so flexible. EJB, Web Services,
JavaBeans, JPA / EclipseLink / TopLink objects and many others can all be
used as Business Services for the Oracle ADF Model. ADF View layers may consist on Web based interfaces implemented with JSF, Desktop Swing
applications, MS Office front ends and interfaces for mobile
devices.

The ADF Business Services Layer

The ADF Business Services layer manages interaction with a data persistence layer. It provides such services as data persistence, transaction management, object / relational mapping and business logic execution.The Business Services layer can be implemented in Oracle ADF Business Components, Java classes, EJB, Web services and JPA objects. Data can be consumed directly from files (XML or CSV) and from REST service.

Oracle ADF Controller Layer

The ADF controller layer manages the ADF applications flow and handles user input. For example, when you click a Search button on a page, the controller determines what action to perform for a search and where to navigate the results page.There are two controller options for web-based applications in JDeveloper: 1- Standard JSF controller 2- ADF Controller which extends the JSF controller functionality.

Whichever controller you use, you will typically design application flow by laying out pages and navigation rules on a diagram. With the ADF controller, application's flow may break into smaller, reusable task flows; include non-visual components like method calls, decision points and creation of "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.

Oracle ADF View Layer

Oracle ADF View layer represents the application user interfaces. Oracle ADF support multi-channel access to 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. Oracle ADF offers a rich set of more than 150 Ajax enabled JSF components which simplified the creation of dynamic and appealing user interfaces.

Oracle ADF Model Layer

Oracle ADF model layer connects the business services to the other layers objects. ADF Model layer sits on top of business services, it provides a single access interface to any type of business service.