oafandadf_v2

9
E-Business Suite Application Development using Oracle Application Framework (OAF) and Application Development Framework (ADF) An Oracle White Paper February 2008

Upload: lingaraj-sarangi

Post on 30-Dec-2015

6 views

Category:

Documents


0 download

DESCRIPTION

E-Business Suite ApplicationDevelopment using OracleApplication Framework (OAF)and Application DevelopmentFramework (ADF)

TRANSCRIPT

Page 1: OAFandADF_V2

E-Business Suite Application Development using Oracle Application Framework (OAF) and Application Development Framework (ADF)

An Oracle White PaperFebruary 2008

Page 2: OAFandADF_V2

NOTE:The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

E-Business Suite Application Development using OAF and ADF Page 2

Page 3: OAFandADF_V2

E-Business Suite Application Development using Oracle Application Framework (OAF) and Application

Development Framework (ADF)

INTRODUCTIONCustomers, partners and system integrators often develop extensions to E-Business Suite (EBS) applications. Such extensions have traditionally used the same technology stack (Forms or OA Framework) that the original E-Business Suite application was built with. This ensured that the extensions are fully compatible with the rest of the installed E-Business Suite applications.

With the emergence of the next generation Fusion Middleware technology stack, especially the Application Development Framework, a common question from customers is whether to use OAF or ADF to develop their extensions.

This document helps customers and partners understand the similarities, differences and overlaps between the OAF and ADF stacks so that they can take an informed decision about the right technology stack for the extensions being built.

UNDERSTAND THE TECHNOLOGY STACKSThroughout this document, unless otherwise specified, OAF means OAF R12 (i.e. the version of OAF packaged with E-Business Suite R12) and ADF means ADF 10g.

OAF is a model-view-controller technology stack that is fully oriented towards E-Business Suite application development. The OAF stack is comprised of underlying technologies like UIX and BC4J, that respectively form the core of the view and model layers. It includes Application Object Library (AOL) that provides common E-Business Suite artifacts such as menus, functions, messages, profiles, flexfields and attachments, and common services like function and data security. MDS is used for metadata management. And finally, the OAF design time is integrated with Oracle JDeveloper 10g to provide a comprehensive integrated development platform.

E-Business Suite Application Development using OAF and ADF Page 3

OAF R12 builds on top of ADF 10g. So, OAF and ADF are not mutually exclusive

technology stacks.

Page 4: OAFandADF_V2

OAF Technology Stack for E-Business Suite R12

ADF is a comprehensive, model-view-controller technology stack that is oriented towards general-purpose application development. The ADF stack allows users to select among several choices of UI and business services technologies. The ADF stack is primarily comprised of ADF Faces (which is based on industry standard JSF technology), ADFm (m for model - the data control layer that implements JSR-227) and ADFbc (bc for business components – formerly BC4J). Early releases of ADF contained UIX. Oracle then developed the ADF Faces set of components, based on UIX functionality, but conforming to the JSF standard. The ADF Faces components now replace UIX as the preferred view technology for ADF applications. ADF design time is also integrated with JDeveloper 10g.

ADF 10g Technology Stack

E-Business Suite Application Development using OAF and ADF Page 4

It’s important to understand the technology stack you want to use. Different

combinations of the same components create different technology stacks.

View

Controller

ADF FacesADF FacesJSFJSF

Portlet BindingsPortlet BindingsMobile BindingsMobile Bindings Model(JSR 227)

JSPJSPADF SwingADF Swing

JSFJSFStrutsStruts

ADF BindingsADF Bindings

ADF Data ControlADF Data Control

PortletsJSR 168 - WSRP

PortletsJSR 168 - WSRP

WebServices

WebServices

BusinessServices

ADFBusiness

Components

ADFBusiness

Components

JavaClassesJava

ClassesTopLink

POJOTopLink

POJOEJBEJB

View

Controller

ADF FacesADF FacesJSFJSF

Portlet BindingsPortlet BindingsMobile BindingsMobile Bindings Model(JSR 227)

JSPJSPADF SwingADF Swing

JSFJSFStrutsStruts

ADF BindingsADF Bindings

ADF Data ControlADF Data Control

PortletsJSR 168 - WSRP

PortletsJSR 168 - WSRP

WebServices

WebServices

BusinessServices

ADFBusiness

Components

ADFBusiness

Components

JavaClassesJava

ClassesTopLink

POJOTopLink

POJOEJBEJB

View

Controller

PortletsWSRP, JSR-168

PortletsWSRP, JSR-168MDSMDS OAF View

UIXOAF View

UIX

OAF ControllerOAF Controller

WebServices

WebServices

OAF ModelBC4J

OAF ModelBC4J

AOL and SSO

Services

AOL and SSO

Services Model & Business Services

View

Controller

PortletsWSRP, JSR-168

PortletsWSRP, JSR-168MDSMDS OAF View

UIXOAF View

UIX

OAF ControllerOAF Controller

WebServices

WebServices

OAF ModelBC4J

OAF ModelBC4J

AOL and SSO

Services

AOL and SSO

Services Model & Business Services

Page 5: OAFandADF_V2

Given the overlap of UIX and BC4J layers across the two stacks, OAF and ADF are not really mutually exclusive. Thus, extensions built using OAF indirectly use parts of ADF.

OAF AND ADF – A DETAILED COMPARISONThe following table provides a comparison of the two technology stacks.

OAF R12 ADF 10gMVC Stack

View UIX + EBS-specific extensions

ADF Faces

Model BC4J + EBS-specific extensions

ADFm + ADFbc (BC4J)

Controller OAF Controller JSF ControllerChoice of alternate view

or modelX √

Technology LayersMDS √ √

JDeveloper √ √AOL √ XJOC √ X

Industry StandardsJSF X √

JSR-227 X √WSRP 1.0 √ √

JSR-168 √ √UI Features

Look and Feel Swan look and feel Oracle Desktop / Browser look and feel

(BLAF)Rich Client Interface X X

Auto-detection of partial page refresh targets √ X

List of Values – validation, auto-

complete, auto-clear√ X

E-Business Suite Application Development using OAF and ADF Page 5

The OAF-based stack and the ADF 10g-based stack provide different features.

The presence of individual features in the stack may make your decision clear.

Page 6: OAFandADF_V2

OAF R12 ADF 10gTransactional Search –

Query Bean√ X

Data Export √ XConfigurable Pages √ X

Rich Text Editor √ XBusiness Layer

Exposing BC4J components as web

services

√ √

PL/SQL DML operation support

√ X

Support for translatable entities (TL tables) √ X

WHO column support √ XSession ManagementE-Business Suite Session

management√ X

Design TimeVisual Editor X √

Drag/Drop data controls

X √

WorkflowOracle Workflow

integration√ X

BPEL integration X √Security

Authentication OID and SSO OIDAuthorization Function Security JAZNData Security √ X

WTI implementation √ XMAC support √ X

Securing against cross-site scripting attacks

√ X

Audit and Compliance

E-Business Suite Application Development using OAF and ADF Page 6

Page 7: OAFandADF_V2

OAF R12 ADF 10gPage Access Tracking √ X

Personalization and Extensions

Multi-layered page personalizations

√ X

BC4J Extensions √ √EBS-specific Artifacts

Translatable Strings AOL Messages Java Resource Bundles

Profiles √ XFlexfields √ X

Attachments √ XEase of migration to Fusion ADF (11g)

UI Possible for declarative UI

Possible

Business Layer Easy migration for BC4J components

Easy migration for BC4J components

Controller Non-trivial Possible

A NOTE ON FUSION MIDDLEWARE ADF 11GSeveral of the features above not present in ADF 10g are expected to be in ADF 11g. ADF 11g is currently available in preview beta. It provides a AJAX-based, rich client user interface and comes packaged with Oracle Jdeveloper 11g. When ADF 11g becomes production, we will publish a revised paper that compares OAF with ADF 11g, and discuss development against E-Business Suite.

CONCLUSIONS AND RECOMMENDATIONSOracle's general advice is to stick with the OAF technology stack so long as you are working with E-Business Suite customizations, and opt for ADF if building entirely new applications.

If you are embarking on small extensions to the E-Business Suite, a few pages here and there that you want to integrate into the existing applications, it's always better to use the existing tool for the product line. If you are building entirely new,

E-Business Suite Application Development using OAF and ADF Page 7

Page 8: OAFandADF_V2

independent applications, where seamless integration with the current application pages isn't important, you should use ADF 10g (with ADF BC and ADF Faces). Then you may have less effort required to convert your custom applications from ADF 10g to ADF 11g when you move to the Fusion Applications later.

If you intend to build a completely standalone application that uses E-Business Suite tables, you can certainly use ADF 10g without OAF. In that case you would use the look-and-feel of the core products, and for things like security, you would code to the standard security APIs of the application server instead of to OAF security. A second option would be to go in for SOA and use web services from E-Business Suite to build ADF applications. If you go this route, you would not be able to use any OAF-specific things like flexfields and personalization. Please refer to http://www.oracle.com/applications/evolutionary-path-to-fusion.pdf to know more about the evolutionary path to Fusion based on ADF and SOA.

In conclusion, there are three main situations and corresponding recommendations for building your custom extensions to the E-Business Suite:

1. If you want to integrate your extensions tightly with the E-Business Suite, you should use the OAF Release 12 technology stack, which includes the use of JDeveloper 10g and ADF BC (or use OAF Release 11i, which uses JDeveloper 9i).

2. If you are building a separate application that does not integrate tightly with the E-Business Suite, but needs E-Business Suite-specific capabilities like Flexfields and personalization, you should use the OAF Release 12 technology stack. If your application does not need to integrate with the E-Business Suite, or doesn't require any of the E-Business Suite-specific capabilities enumerated above, you should use ADF 10g with SOA based integration with E-Business Suite.

3. If you are building a separate application that does not need to integrate at all with the E-Business Suite, and you need an AJAX-style rich client user interface, you should use ADF 11g.

E-Business Suite Application Development using OAF and ADF Page 8

Page 9: OAFandADF_V2

OA Framework and ADFFebruary 2008Author: Sara WoodhullContributing Authors: Padmaprabodh Ambale

Oracle CorporationWorld Headquarters500 Oracle ParkwayRedwood Shores, CA 94065U.S.A.

Worldwide Inquiries:Phone: +1.650.506.7000Fax: +1.650.506.7200oracle.com

Copyright © 2008, Oracle. All rights reserved.This document is provided for information purposes only and the contents hereof are subject to change without notice.This document is not warranted to be error-free, nor subject to any other warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. We specifically disclaim any liability with respect to this document and no contractual obligations are formed either directly or indirectly by this document. This document may not be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without our prior written permission.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.