Friday May 04, 2012

To ADF or to OAF? or Can I use ADF with Oracle E-Business Suite?

I'm back from the Collaborate 2012 conference - a conference that brings together several Oracle user groups, including the Oracle Application User Group. It was nice to see a growing interest in ADF sessions this year, with many of the attendees actually coming from an Oracle E-Business Suite (EBS for short) background. One question that came up several times from this audience in different forms was "Should I use/learn OAF or ADF for my future development".

The answer is "it depends on what you want to do".
Let me explain. If what you need to do is modify an existing EBS form/page - then you'll need to do it with the tool that this Form was built with. This means you'll use OAF (or in some cases Oracle Forms) and change the metadata that defines the page. This is true for the scenarios commonly referred to as "customization" or "personalization" in the EBS world.


However there are situations where what you want to do is not modify an existing page but rather develop a new user interface that drastically change the interaction with the system or provides new functionality that doesn't exist right now in EBS.
Maybe you want to build a Mobile UI for EBS? Maybe you need a rich dashboard with lots of interactive graphs? Maybe you need to build a system that brings together data from both EBS as well as other sources of data?
In these cases OAF probably won't cut it, and ADF is probably the right choice for you.
After all ADF is what Oracle used when we needed to build a new set of functionality for our enterprise applications - the result is Fusion Applications that are built from the ground up with Oracle ADF.

Does knowledge in OAF helps with ADF?
If you are already familiar with OAF, some concepts in ADF will be easy for you to learn. For example OAF uses an older version of ADF Business Components - so you'll be familiar with key concepts such as Entity Objects and View Objects etc - although you'll have many new features that you'll be able to leverage when using ADF 11g.
You'll also be familiar with the component approach to UI design that is common to OAF and ADF - although ADF has a vastly richer set of UI components and a much more visual approach for screen development.
If you haven't seen how ADF development looks like yet, have a look at this demo - hopefully it will show you why we think this is a better development experience than we had in the past.

How do you do the integration between ADF and EBS?
If you just need "read only" access to EBS than you can use direct access to the database using JDBC and potentially the AppsDataSource (more on that component - https://blogs.oracle.com/stevenChan/entry/appsdatasource_jaas_ebs) and a demo is here.

If you also need to do update/insert/delete of if you need to invoke more complex processes in EBS than you can use the service interfaces EBS offers either with the built in integration functionality in EBS through the Integrated SOA Gateway .
ADF makes it quite easy to build UIs on top of Web services too.

As far as security integration, today you can use the users/roles defined in EBS to secure your ADF application using the EBS JAAS solution as explained here.

[Update July 2011] - The EBS team just released Oracle E-Business Suite Java SDK version 2, which now also offer session management and other features.

To call an ADF from an EBS application - that's just a matter of adding a menu option in EBS that calls out to the URL of your ADF pages.

For smooth single-sign-on between the two application you should be looking at Oracle Access Manager which is certified with both platforms.

There is more work being done on integrating the two platforms at Oracle - so expect more functionality to become available in future versions.

If you are interested in exploring this area - Juan has several blog entries that will show you some integration techniques.

Thursday Aug 14, 2008

Can ADF be used with Oracle E-Business Suite / Siebel/ Peoplesoft

Update May-2011 - a little more up-to-date info on using ADF with EBS here.

Whenever I finish showing an ADF 11g demo to people who are working on enterprise applications like Oracle E-Business Suite or Peoplesoft or Siebel - the first question I get is "can we use ADF with our existing application".
Basically they would like to build new UIs on top of their existing systems - and leverage the cool new Ajax based functionality in ADF Faces.

The short answer is YES.

There are two ways of doing this.
One is just build an ADF application directly accessing the database underlying your application.
All you need is the DB connection info and an understanding of the underlying tables.

However one thing to note here is that Oracle EBS and other applications usually use roles when they are accessing the DB from UIs - and using the above approach you are not using the roles/security that are set in the applications.
(update 2010 - you can now use the EBS Datasource to do this - here is a bit more info on the JAAS for EBS solution)

So the more "correct" way of accessing these enterprise systems would be to use SOA - or basically access the applications through the official interfaces they expose. These would basically be web services that allow you to interact with the system using correct roles and security.

A very basic way of doing this from ADF is to use the Web Service Data Control - or just create a java class that access the Web Service and then expose it as a data control.
You can also of course bring in the full Oracle SOA Suite with its set of adapters into the picture.

Some other questions you might have are:
Is this recommended by Apps?
Yes it is one of the top ways they tell you to prepare for Fusion apps. See the "Highlight" section of this page.

Do you have samples/demos?
A newer sample using PSFT that also show mobile UIhere
Here's one for PeopleSoft.
Here's a how-to for Siebel.

Do you have customers doing this?
The answer is yes - we have several customers doing it (for example see Viewsonic story) and we also have Oracle products doing this (Siebel Self Service 8.1). Also see this document for more examples.

Where do I get more info?
Choose the link that match your application:
EBS - http://www.oracle.com/technetwork/middleware/index-098944.html

PSFT - http://www.oracle.com/technetwork/middleware/index-101014.html

Siebel - http://www.oracle.com/technetwork/middleware/index-095206.html

JD Edwards - http://www.oracle.com/technetwork/middleware/index-088030.html

About

me
I'm a Director of Product Management for the Oracle Java Development Tools.
Follow me:
Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today