OAF Development Guide

Post on 24-Nov-2014

419 views 6 download

Tags:

transcript

OAF Development Guide

Concept

Controller (CO) Application Module (AM) View Object (VO) Entity Object (EO) Page, Region & Region Items

Concept - Controller (CO)

A controller in OA Framework is a Java class that is attached to a region. It is mainly responsible for page rendering and respond to and handle user actions

Based on OAController interface (3 methods)– processRequest(): called by OA Framework just before a region

gets displayed– processFormData(): invoked when a user submits the page– processFormRequest(): invoked if processFormData() does not

raise any unhandled exceptions Common Parameters

– OAPageContext: provides application context and also the current user’s session-related details

get parameter values passed to the page get a handle to the Root Application Module navigate to another page

– OAWebBean: Use this parameter to get a handle to any of the beans within an OAF page

Concept - Application Module (AM)

A broker between the User Interface and Database Object [VO and EO]

Every OA Framework page accessed through Oracle Applications must have an Application Module attached to its top-level region

Application modules can also be attached at lower-level regions within the page (i.e. Nested AMs

Concept - View Object (VO)

query data from database can be SQL or EO based

Concept - Entity Object (EO)

include all columns of a corresponding table responsible for doing inserts, updates, and

deletes to database tables each instance of an entity object represents

a single row in the database table

Concept - Page, Region & Region Items

A page consists of regions, and the region can consist of various region items. Regions and region items can be of differing types. They can also be nested within other regions.

Tools

Java Decomplier JDeveloper Browser (with Developer Mode)

Tools - Java Decomplier

Decompile java .class files (CO / VO / EO etc.)

E.g. Cavaj

http://cavaj-java-decompiler.en.softonic.com

Tools - JDeveloper

Determine the right version of JDeveloper

Metalink Note: 416708.1

Tools - Browser

IE - Developer Mode

Tools - Browser

Firefox – Firebug Plug-in

Setup

Environment Variable Java Packages Page / Region XML Files DBC File Profile Options

Setup – Environment Variable

JDEV_USER_HOME

E.g. C:\JDeveloper9i\jdevhome\jdev

Setup – Java Packages

Standard Package Convention– e.g. Package oracle.apps.ap.oie.webui -> Path:

$JAVA_TOP/oracle/apps/oie/webui

Extension Naming Convention– adding company name as a prefix– e.g. Package pag.oracle.apps.ap.oie.webui ->

Path $JAVA_TOP/pag/oracle/apps/oie/webui

Setup – Java Packages

Setup – Java Packages

Download class files & server.xml– Save to <JDEV_USER_HOME>\myclasses\– E.g. C:\JDeveloper9i\jdevhome\jdev\myclasses\oracle\apps\

ap\oie\webui\*– Some important classes:

$JAVA_TOP/oracle/cabo/* $JAVA_TOP/oracle/jbo/* $JAVA_TOP/oracle/svc/* $JAVA_TOP/oracle/apps/fnd/common/* $JAVA_TOP/oracle/apps/fnd/framework/* $JAVA_TOP/oracle/apps/fnd/wf/*

Setup – Page / Region XML Files

Download xml files– Path: <APPLICATION_TOP>/mds/*– e.g. $AP_TOP/mds/oie/webui/*.xml– Save to <JDEV_USER_HOME>\myprojects\– e.g. C:\JDeveloper9i\jdevhome\jdev\myprojects\

oracle\apps\ap\oie\webui\*– (Note: does not have to create "mds" folder)

Setup – DBC File

Contains all the information (except password) required to establish a database connection

Download From $FND_SECURE Save to <JDEV_USER_HOME>\dbc_files\

secure

Setup – Profile Option

Personalize Self-Service Defn– must be set to Yes for personalizations to be

performed

FND: personalization region Link Enabled– enable personalization links at region level.

FND: Diagnostics– An About this page link appears at the bottom of

every OA Framework page

Methods

“About this Page” Personalization Extension

– CO Extension– VO Extension and Substitution– EO / AM Extension

Modification of existing classes (not preferred)

Deployment

Page / Region XML Files VO Substitutions .class files (e.g. CO Extension)

Deployment - Page / Region XML Files

Step 1 – import.bat– cd C:\JDeveloper9i\jdevbin\jdev\bin– import C:\JDeveloper9i\jdevhome\jdev\myprojects\oracle\apps\

ap\oie\webui\OIEMAINPAGE.xml -username apps -password apps -rootdir C:\JDeveloper9i\jdevhome\jdev\myprojects\ -dbconnection "(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST = pagdisc.local)(PORT=1523)))(CONNECT_DATA=(SERVICE_NAME = UAT)))"

Deployment - Page / Region XML Files

Step 2 – Clear MDS Cache– Login as Functional Administrator

Deployment - VO Substitutions

Step 1 - jpximport.bat– cd C:\JDeveloper9i\jdevbin\jdev\bin– jpximport.bat C:\JDeveloper9i\jdevhome\jdev\

myclasses\PAGOIE.jpx -username apps -password apps -dbconnection "(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST = pagdisc.local)(PORT=1523)))(CONNECT_DATA=(SERVICE_NAME = UAT)))"

Deployment - VO Substitutions

Step 2 – Bounce mid-tier– $COMMON_TOP/admin/scripts/adstpall.sh

apps/<apps_password>– $COMMON_TOP/admin/scripts/adstrtal.sh

apps/<apps_password>

Deployment - .class files

Step 1 – Upload .class files– Upload .class files to $JAVA_TOP (e.g.

$JAVA_TOP/oracle/apps/ap/oie/webui)

Step 2 – Bounce apache– $COMMON_TOP/admin/scripts/$TWO_TASK*/

adapcctl.sh stop– $COMMON_TOP/admin/scripts/$TWO_TASK*/

adapcctl.sh start