How to Create and Test a Simple Page
Posted on March 20, 2009How to Create and Test a Simple Page
In this tutorial we offer the minimal tasks for building a query-only web form using OA Framework. We create the form using declarative steps. That is, we do not enter Java to build the web page. Instead we choose options from menus and set object properties. We developed this tutorial for a R12 E-Business Suite instance, but you can use it for an 11i instance, as well, although the screens will be different.
Setup
- Download and install JDeveloper with OA Framework extension. See Metalink Note: 416708.1 "How to find the correct version of JDeveloper to use with eBusiness Suite 11i or Release 12". You should follow the instructions for downloading the appropriate .dbc file for your system. See the topic "Setting Up Your Development Environment" in Chapter 1 of the "Oracle Applications Framework Developer's Guide".
- Identify or create a valid E-Business Suite user and grant them the responsibilities: OA Framework ToolBox Tutorial and OA Framework ToolBox Tutorial Labs.
- This tutorial uses the EMP table from the SCOTT/TIGER schema. Make sure the user APPS has, at a minimum, SELECT privilege on that table.
- You should know the location of you JDeveloper install. See your OS for the JDEV_USER_HOME environment variable. It may look something like: c:\oracle\jdeveloper_R12\jdevhome\jdev
- The default install of JDeveloper created a directory
/myprojects. In this tutorial we will refer to this path as .
- Any E-Business Suite customization should be shielded from updates by name and location. OA Framework customizations are no different. This tutorial will use the reference
where you should enter a unique name, such as XXABC. - Any E-Business Suite customization should be shielded from updates by name and location. OA Framework customizations are no different. This tutorial will use the reference
JDeveloper
This tutorial will walk you through these tasks:- Create a new OA workspace
- Create an application module
- Create a view object
- Edit the application module
- Create a web page
- Edit page object
- Test the page
At the end you will have a queriable page with the look-and-feel of a Apps web form. A future posting will offer the steps for deploying this form from E-Business Suite.
Create a New OA Workspace
A workspace is a grouping of files related to an application. In this step we will create a workspace and enter the database connection information.- After starting JDeveloper, select either the System Navigator or Applications Navigator tab
- Right-click the Applications top-level node
- From the popup menu select OA Workspace. (See image below.)
- The New Workspace Dialog box appears. (See image below.) In the file name enter: EmployeeWS

- Make sure the New OA Project checkbox is checked and click OK
- The OA Project Wizard will appear. If the welcome page appears, click: Next
- In step 1 of the wizard, replace the default Project Name with: EmployeePR
- Leave the default package blank
- Click Next
- On Step 2, Click Next
- On Step 3, complete the fields in the Connection region. Use the Browse button to select the .dbc file for your environment. Enter the valid E-Business suite username/password identified in the Setup section of this document.
- In the Responsibility region of this page, make sure the application short name is AK and the responsibility key is FWK_TBX_TUTORIAL. (You have a valid application short name and responsibility key, and the responsibility must be assigned to user.Click Finish
Create an Application Module
This step will create an Application Module, required for creating our web page.- Right-click on EmployeePR project and select New...
- In the New Gallery window, open the Business Tier node
- Select Application Module from the Items window and click the OK button
- The Create Application Module wizard will appear. If the welcome page appears, click Next
- On Step 1 of the wizard, in the Package field enter:
.oracle.apps.ak.server (Note: OA Framework requires strict adherence to naming structures. See Chapter 8: Standards and Guidelines of Oracle Application Framework Developer's Guide for more information. - In the Name field enter: EmployeeAM. (See image below.)
- Click the Next button.
- Click the Finish button.
- In the Name field enter: EmployeeAM. (See image below.)
Create a View Object
Next, we define a view object that select specific columns from the EMP table.- Right-click on the server node for the new package (See image below.)
- Select New View Object. The Create View Object wizard will appear.
- If the welcome appears, click Next
- In step 1, make sure the package name reads:
.oracle.apps.ak.server (e.g. XXABC.oracle.apps.ak.server - In the name field enter: EmployeeVO. Click Next.
- Click Next until you reach Step 5 of the wizard.
- In the Query Statement region enter (See image below):
SELECT empno, ename, job, hiredate, sal FROM scott.emp
- Click the Test button. If you receive an error message, check the syntax and EMP table privleges. (Note, in our case we granted SELECT privilege to the user APPS, but we did not create a synonym. Thus we needed to include the schema owner, SCOTT._)
- Click Next until you reach Step 8 of the wizard.
- Uncheck Generate Java File for the View Object Class, but do check the Generate Jave File for the View Row Class. (See image below.)
- Click Finish
Edit the Application Module
After creating the View Object, we need to relate the View Object with the Application Module.- If not visible, expand the hierarchy of the project to display the EmployeeAM object.
- Right-click the EmployeeAM object and select Edit EmployeeAM (See image below.)
- The Application Module Editor appears. (See image below.) The right-hand portion of the window should be title Data Model. From the Available View Objects region of the page, find the EmployeeVO object. Select this and shuttle it to the Data Model portion of the page. (Note, JDeveloper will list the object as EmployeeVO1.)

- Click: OK
Create a Page
We need to create a Web page as the last object.- Right-click on the AK node for the package and select New...
- The New Gallery window appears.(See image below.) In the categories list, expand the Web Tier node.
- Click OA Components.
- From the Items list (right-side), select Page
- Click: OK
- The New Page dialog box appears. (See image below.) In the Name field enter: EmployeePG
- In the Package field enter:
.oracle.apps.ak.webui
Edit the Page Object
JDeveloper created an empty page object. We need to add components to this object. In this section we will:- Set page object properties
- Add product brand image (required by OA Framework guidelines)
- Add a query region
- Apply a results table to the query region
The default components of the page include a region and an image (See image below.)

Set page object properties
- Select the region1 component. The Property Inspector diplays the properties. If you do not see the Property Inspector, display it by navigating to the View menu and selecting Property Inspector.
- Set the following properties:
| Property | Value |
| ID | PageLayoutRN |
| AM Definition | |
| Window Title | Scott's Employees |
| Title | Employees |
| Auto Footer | True |
Add product brand image
- Right-click on the PageLayoutRN component.
- From the popup menu select ProductBranding
- JDeveloer creates a node in the EmployeePG hierarchy and creates an object called item1. Select item1
- Use the table below to set the properties for item1.
| Property | Value |
| ID | ProdBrand |
| Image URL | FNDTAPPBRAND.gif |
Add a region
Within a web page we place content within regions. This step will create a new, empty region.- Right-click on the PageLayoutRN component
- Select New and then Region
- JDeveloper creates a region object called region1
- Use the table below to set the properties for region1
| Property | Value |
| ID | QueryRN |
| Region Style | query |
| Construction Mode | resultsBasedSearch |
| Include Simple Panel | True |
| Include View Panel | True |
| Include Advanced Panel | True |
Apply a results table to the query region
Within a region, we can place content. Here we will add a results table.- Right-click on the QueryRN component
- Select New and then Region Using Wizard
- If the Welcome page appears, click Next
- On Step 1, use the Application Module drop-down and select
.oracle.apps.ak.server.EmployeeAM - In the Available View Usages you should see: EmployeeVO1
- Select EmployeeVO1 and click Next
- In Step 2, set Region ID to ResultsTable and Region Style to table
- Click Next
- In Step 3, use the Add All button >> to move all fields from the Available window to the Selected window
- Click Finish
Test the Form
At this point we have the basic components to run a query-only web form.- Right-click the EmployeePG component from either Application Navigator or the Structure window.
- From the popup menu, select Rebuild (See image below.)

- If you encountered errors, correct them by reviewing this tutorial
- When you receive a clean (error-free; warnings are expectetd) compile, right-click the EmployeePG component and select Run. If you receive an error, review the posting Setting up OA Framework for solutions.
- After a few moments, the web form will appear (See image below.)

- Click the OK button to execute a blind query (See image below.)

Notes on Setting Up OA Framework
Posted on March 18, 2009Notes on Setting Up OA Framework
This note augments the OA Framework document Setting Up Your Development Environment that Oracle includes as part of the default installation. You can find this document in the
Follow the setup instructions so you can run OA Framework solutions from your development environment.
Setup Tasks
- The document Setting Up Your Development Environment gives you the majority of the setup steps you will need. One task needs additional comments and another task needs to be added.
Task 5
- In Task 5: Launching JDeveloper and Configuring the Database Connection and User, the instructions walk you through the Runtime Connection step. We should note that the user/password you enter must be a valid E-Business Suite user. Additionally, the valid user must be assigned the responsibility referenced in the Application Short Name and Responsibility Key fields. (See image below.) When you run your application, JDeveloper will user the .dbc file, username/password, and validate the responsibility setup.
Missing Task
- When you attempt to run your application, JDeveloper will create a virtual web server. For this to execute properly, select Tools->Embedded OC4J Server Preferences.
- Expand the Global node and select Starup
- Check the Default Local IP Address radio button. (See image below.)
- Click OK
OA Framework R12 Tutorial Mismatch
Posted on February 15, 2009OA Framework R12 Tutorials
If you began learning OA Framework using a R12 version (See Metalink Note: 416708.1, "How to find the correct version of JDeveloper to use with eBusiness Suite 11i or Release 12") and and you attempted to follow the accompanying tutorials, you will soon uncover a problem: The screen snapshots and some of the instructions in the tutorials in OA Framework R12 do not match the actual screens in JDeveloper!
Currently, the tutorials that accompany the R12 releases have not been updated and still pertain to the 11i version. (See Metalink Doc 396294.1 for a list of differences between OAF 11i and OAF R12)
Now What?
Well, you can take a few minutes and "express frustration" over another bureaucratic blunder by a huge multi-national company (typically our first response). Then we move on.
Below we list examples from the OAF R12 tutorials that highlight incorrect instructions and offer our work-arounds.
Hello, World!
In the "Hello, World!" exercise of chapter 2, step 1 instructs how to create a new OA Workspace. Here are the updated instructions for R12:
- In either the System Navigator or Application Navigator, right-click on the Applications root item. A pop-up menu appears. (See image below).
- Choose New OA Framework Workspace

The excercise continues with only minor differences between R12 and the tutorial.
Search
In the "Search" exercise of chapter 2, step 1.3 "Organize Your Projects into Categories", the R12 icon has changed. From the System Navigator or Applications Navigator, use the Sort by Type icon to change the sort order from alphabetic to category. See the image below.
Task 2 of the Search exercise highlights a change from 11i to R12 that will carry throughout all of the exercises in the tutorial.
Step 2.1 instructs to create a BC4J package then populate it with OAF objects, such as entity objects and view objects. R12 does not require this step; packages are automatically created when you create an object. Thus, R12 obsoletes steps 2.1 and 2.2 of this exercise. You can skip these steps and go to step 2.3 "Create Your Root UI Application Module (AM)" and follow these alternate steps:
- Right-click on your new project
- Select New... (The New Gallery window appears)
- Expand the Business Tier node in the Categories window (left window)
- Select ADF Business Components
- In the Items window (right window), select Application Module (See the image below.)
- Click OK

The Create Application Module Wizard appears, and you can continue step 2.3 in the tutorial, at the second bullet.
Verify by expanding your new project in the System Navigator window. (If you have the Applications Navigator displayed, then expand the Application Sources folder.) You will see the BC4J package you defined, and by expanding the nodes of the package, you will see the Application Module you made in step 2.3. Note the number of levels displayed in the Navigators is controlled by Flat Level box. (See image below.)

At this point you have a package created and right-clicking on a package presents a menu where you can create the remaining objects required by the tutorial exercises. See the image below.
Comparing OA Framework to What I Know (Oracle Forms)
Posted on January 26, 2009Comparing OA Framework to What I Know (Oracle Forms)
If you’ve used Oracle Forms for Apps development, this section will help make comparisons between Forms and OA Framework. Please feel free to post suggestions and corrections.
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
With Oracle Forms I can create custom Apps modules and modify seeded Apps Forms. |
JDeveloper is the development tool for creating custom Apps web pages and modifying seeded Apps web pages. |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
I use TEMPLATE.fmb as the starting point for any custom Apps forms. TEMPLATE.fmb contains references to libraries, property settings, and menus that will help make custom forms look-and-feel like Oracle-provided forms. |
OA Framework is a development and deployment platform presented through JDeveloper. The seeded objects and settings give custom web pages the same look-and-feel as Oracle-provided web pages |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
I use SQL and PL/SQL in Oracle Forms |
We will still use SQL statements, specifically in View Objects. We can execute PL/SQL, but within Java code. If you’re Java skills are nil or weak, now might be a good time to plan a training program. See What To Do Next for more information. |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
An Oracle Forms file (.fmb) contains screen design and custom procedures and functions. |
Reusable code, that’s the mantra for JDeveloper and OA Framework. In Oracle Forms a data block references a table or view, and that definition is contained within the .fmb. With JDeveloper, we create view objects or entity objects that can be reused by other web pages. |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
I can use triggers (e.g. Key-Next-Item) in Oracle Forms to validate data. |
Web pages developed within the OA Framework do not have triggers. Validation takes place after a user completes a page, or portion of a page, and submits that page to the server. |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
In Forms, I can reuse forms, libraries, and menus by referencing. |
OA Framework is an assembly of reusable objects. |
|
|
|
|
Using Oracle Forms I know… |
And in OA Framework… |
|
In Forms I create and use canvases: *Forms requires a root canvas *I use stacked canvases for controlling access to groups of items *Fields and buttons appear on a canvas *Properties control the appearance of canvases and items |
In OA Framework we use the concept of a region: *A web page requires a root region *Regions can be nested *Widgets (fields, buttons, images, etc) appear in a region * Properties control the appearance of widgets |
What is OA Framework?
Posted on January 26, 2009What is OA Framework?
The Oracle Applications Framework (OA Framework) is a development and deployment platform used for Oracle Applications (Apps) HTML-based screens. In other words, OA Framework is the standard approach for building and launching Apps web pages. This includes the “i” modules, such as iReceivables, iProcurement, etc. The framework contains the design rules and components that include the look-and-feel for web pages, so any custom-built pages will have a presentation identical to Oracle-developed pages.
JDeveloper is the tool for accessing and employing OA Framework development rules. As the name implies, JDeveloper is a Java-oriented tool, but that includes “all-things-Java”, such as XML, JSP, SOA, and many other items, not all of which will apply to Apps development.
So, using JDeveloper as the development tool and OA Framework as the design architecture, we can modify existing Apps web pages, as well as build new ones.
The framework seeds JDeveloper with pre-defined objects and settings. Custom objects can inherit settings from seeded objects, effectively becoming clones of those objects. Cloned objects can be extended, essentially tweaked to include customizations. Developers familiar with Oracle Forms can begin to draw on the TEMPLATE.fmb for comparisons. See Comparing to What I Know (Oracle Forms) for a further discussion.
Who Needs to Know It?
Developers: face it, Apps will change and you can react to that fact or not. Oracle will continue to reengineer Apps, moving more Forms-based screens to OA Framework web pages, evolving the Apps to a more Java-centric technology. (For an example, see the changes in Customers page between R12 and 11.5.10.) JDeveloper and OA Framework will be the tools for building and deploying web pages our users work with. For all the PL/SQL and Oracle Forms developers out there, start planning your evolution. Sure PL/SQL and Forms will be around for some time, but you need to add more skills to your stack if you want to stay current (employable).
What to Do Next
Start working with the tool (JDeveloper) and the framework. See Metalink Note: 416708.1, “How to find the correct version of JDeveloper to use with eBusiness Suite 11i or Release 12”. If you download JDeveloper with OA Framework for Release 12 beware, the tutorials match the 11i release. That is, the tutorials are not up to date. It’s possible, after some experimentation, to align the tasks in the 11i tutorial to the R12 release.
The major question for a PL/SQL developer with limited or zero Java experience is, “So do I really need to know Java?” Answer: Yes, at least from a conceptual level. Certainly with JDeveloper and OA Framework you can create customizations of easy through mid-range complexity (called Extensions in OA Framework). The intent of OA Framework is to give you a base from which to build. You will be able to satisfy some portion of user requests by extending seeded objects and changing properties. But any seasoned developer will tell you that no code-development tool can generate everything you’ll need.
· Plan your Java education: books, on-line tutorials, instructor-lead classes. You know the method that will work best for you.
· Google OA Framework Blogs and OA Framework Tutorials and discoverer what others are saying

