You are on page 1of 3

BC4J Components in OAF

View Object:
 Contains a database query
1. SQL based
2. EO based
 Used for selecting the data
 VOs are primarily based on Eos
 VO can be used on multiple Eos
Files Associated with VO:

VO.xml

VOImpl.java

VORowImpl.java

Entity Object:
 EO can only interact with the Data Base.
 Entity Object is based on database table
 Entity Object contains attributes which represent database
 columns.
 All insert/update/delete (DML Operations) transactions go
 through EO to database

EO.xml

EOImpl.java

Application Module:

 Container for VOs.


 Every page must have a root application module.
 A page can have only one AM and AM can have number of VO and EO’s.
 To display simple page no need of VO and EO, only AM is enough.
 Handles transactions.
 Once you create a Application Module you need to associate the corresponding
VO to the Application Modules
AM.xml

AMImpl.java

Note: Model objects like EO and VO can't be accessed directly from the Controller Class, except
AM.
Naming Convention:

 All Pages are ends with PG

Ex: HomePG.xml

 All regions are ends with RN

Ex: CustomRN.xml

 All Controller Objects ends with CO

Ex: HomeCO.java

 ViewObjects ends with VO

Ex: EmployeeVO

 Entity Objects ends with EO

Ex: EmployeeEO

 Application Modules ends with AM

Ex: EmployeeAM

Onion Structure:

EO can only interact with DATABASE


Directory Structure:

Top Level: OAWorkspace.jws

Level-2 : OAProject1.jpr

OAProject2.jpr

Level-3:

<CUSTOM_TOP>.oracle.apps.<APPL_TOP_NAME>.schema.server

EO1

EO2

<CUSTOM_TOP>.oracle.apps.< APPL_TOP_NAME >.server

VO

AM

<CUSTOM_TOP>.oracle.apps.< APPL_TOP_NAME >.webui

PG

CO

You might also like