1.
What is
OAF (Oracle Applications Framework)?
A. It is a development
and deployment tool used for HTML based business applications. OA Framework is
based on the industry-standard J2EE MVC
design pattern. The MVC architecture is a component-based design pattern with clean interfaces between the Model,
View, and Controller It further consists of 2 frameworks –BC4J for Model,
UIX for View.
2.
What is MVC (OAF Architecture)?
OAF works on 3 layer architecture (Model,
View Controller).
Model
–
The Model is where the application implements its business logic.
The Model layer
of the J2EE MVC architectural pattern is implemented in the OA Framework by using
the Oracle Business Components for Java (BC4J).
View
- The View is where the application implements
its user interface.
The OA Framework
View is implemented using UI XML (UIX). UIX uses XML to describe the components
and hierarchy that make up an application page. UIX also provides runtime
capabilities to translate that metadata into HTML output so that it can be
shown on a Browser or a mobile device.
Controller
-
Controller is where the application
handles user interaction and directs business flow. OA Controller is a pure Java class Implementation.
3.
What are
various BC4J components?
VO( View Object ) : It contains distinct files
containing SQL query. Query is in .xml file of VO. VO has read only
relationship with DB.
Distinct files : Vo.xml, VOImpl.java,
VORowImpl.java.
EO(Entity Object) :
are BC4J entity objects that encapsulate the business
rules (validations, actions and so on) associated with a row in a database
table. For Example, the PO_VENDORS Table would be created as an Entity Object.
AM (Application
Module) : A BC4J application module is essentially a
container that manages and provides access to "related" BC4J model
objects with the help of Transaction Object
i.e. OADbTransaction.
A page cannot be run w/o AM.
VL (View
Link) : View Link is used to create Master-details link b/w 2 VO’s.
4.
What is a
DBC File?
It is a text file which contains the DB
connectivity information. On the server it is present in $FND_TOP/secure
folder. On the client it is to be placed
in jdevhome\jdev\system9.0.3.5.1453\oa\dbc_files\secure folder.
5.
What are
the various profile options in OAF?
FND Diagnostics: required for ABOUT THIS PAGE and Diagnostic
link on page.
Personalize Self Service Definitions: To
enable Personalize page link on the page.
FND Personalization Region Link Enabled: used to enable Region
Personalization links at every region.
FND Migrate to JRAD: By default set to Yes.
Page would run from MDS if Yes, else it will run from AK.
FND Document root path: required for
personalization migration. It is set to path of the MDS folder on the respective
servers.
FND Corporate Branding image:
FND Banding Size: these profiles options are
used for changing standard image (Oracle) on the page.
6.
How do
you find out which version of Jdeveloper to be deployed on the machine?
Go to http://Host Address:8000/OA_HTML/OAInfo.jsp
This is what you would get
OA Framework Version Information
OA
Framework Version
|
11.5.10.2CU.
|
MDS
Version
|
9.0.5.4.81
(build 481)
|
UIX
Version
|
2.2.18
|
BC4J Version
|
9.0.3.13.51
|
7.
What are
steps for installing Jdeveloper on the client.
· D/W the relevant Jdeveloper patch that your Application supports.
· Extract the zip file --- it will create the 3 folders (jdevbin,
jdevhome, jdevdoc)
· Now set the environment variable (for this right click on MyComputeràPropertiesàAdvanceàEnvironment
Variables)
· Value: JDEV_USER_HOME
· Path: C:\jdevhome\jdev
· Go to the folder jdevbin/jdev/bin
and send the exe file to the desktop (Jdevw.exe)
· Lauch the exe. This would create system directory structure under jdevhome\jdev\system9.0.3.5.1453\
· Now copy the DBC file from $FND_TOP/secure folder and paste it to jdevhome\jdev\system9.0.3.5.1453\oa\dbc_files\secure
folder.
· Create a Data Base connection in Jdeveloper.
8.
Where are
Pages, CO, VO AM, EO etc are placed?
Pages and CO are present in the Webui folder under
the relevant package path.
VO and AM are in Server Folder under the relevant
package path.
EO is in Schema/Server folder.
9.
How many methods are in controller are what are the parameters to
it?
There are 3 (2 are visible)
1. ProcessRequest : is called when the page is requested for the first time
from the server.
2. ProcessFormRequest : is called when some event occurs on the page
3. ProcessformData(not visible). : Used to capture Data from the form
fields which the user has entered and post it into Model Layer.
Parameters
are : OApageContext :
OAWebBean:
OApageContext:
1. To get and set values of the fields, using oapagecontext.getParameter
and oapagecontext.putParameter
2. For redirecting to the current page or another page. For example to
redirecting to current page itself use oapagecontext.forwardImmediatelyToCurrentPage.
Or you may use oapagecontext.sendRedirect(snewpage)
3. To get a handle to application module(remember we attached AM to
page)oapagecontext.getRootApplicationModule()
4. Write debug messages, using oapagecontext.writeDiagnostics
5. Get message text from FND Message dictionary, using
oapagecontext.getMessage
OAWebBean :
OAWebBean :
1. Remember that webbean represents the hierarchy/structure of components
in the page. Hence using this paremeter object, you can get a handle to any
bean/component in that page hierarchy. Once you have a handle to that bean(say
field bean or button bean), you can then invoke methods like setRendered etc to
change the behaviour of page at runtime.
10.
What is
OAPageBean Class
It is the main
page processing class. This class calls process request method on the main page
layout region. And this main region calls the other sub-regions.
11.
What are
the personalization levels?
There are 6
personalization levels:-
·
Functional (High)
·
Localization
·
Site
·
Organization
·
Responsibility
·
System Administrator (low)
12.
Modes of
files while transferring them from client to server?
.xml files are
transferred in ASCII mode
.class files are
transferred in Binary mode
13.
Difference
between Personalization and Extensions.
Through Prsonalization we can only modify/change
the look-n-feel of the page not the business logic behind the page. They are nothing
but making adjustments or changes to the page visible to the user.
Making fields Read-Only,
Rendered or Required.
Change item labels and
region headers.
Setting the number of rows
displayed in a table.
Change field lengths.
Set a default value for an
item.
Define tips (in line
instructions and usage help) for associated items.
Enable totals for table
columns, when applicable.
Filter (restrict query) tabular data.
·
Adding an attribute to the Standard lov.
·
Tailoring the order in which table columns are
displayed.
Personalization features at a number of different
levels within three distinct user groups:
Oracle's
In-House E-Business Suite Developer
Oracle
Applications Administrator
Oracle
Applications User
Our focus will be on the Oracle Applications
Administrator user group, the Oracle Applications
Administrator
has six distinct personalization levels available.
Personalizations are translated into offsets from
the base metadata definition and stored separately. At runtime, all applicable
personalization metadata is loaded from the repository and layered over the
base metadata definition to produce the net effect.
Extension: Here the business logic is altered or the
functionality of the page changes.
14.
How the
page is executed in OAF?
Handling a GET Request
When the browser issues a GET request to the server
for a page (or you manually forward to it), the OA Framework uses the declarative
UI definition to build the web bean hierarchy:
1. The OAPageBean calls processRequest() on the
page's top-level pageLayout bean, and the entire web bean hierarchy is processed recursively as
follows to initialize the web beans
2. Each web bean calls processRequest() on its
children.
3. The oracle.apps.fnd.framework.webui.OAPageBean
gives the web bean hierarchy to UIX to render and send to the browser.
Handling a POST Request
When the browser issues a POST request to the
server for a page:
1. The OAPageBean checks to see if the web bean
hierarchy is in memory. If not (because resources were reclaimed, the user
navigated with the browser Back button, or a POST is issued to the main page
from a dialog message page), it recreates the hierarchy as described in the GET
processing above
2. The OAPageBean calls processFormData(OAPageContext
pageContext, OAWebBean webBean)on all the beans in the hierarchy to write the
form data to the model (specifically, it calls processFormData() on the pageLayout region, and then each web bean recursively calls processFormData() on
its children)
3. OAPageBean calls processFormRequest(OAPageContext
pageContext, OAWebBean webBean) on all the beans in the hierarchy using the
same approach described above. This pass gives your controller code the
opportunity to respond to user actions.
15.
Steps for
OAF Page Registeration?
1. Select all the .xml
and .class files related to your project from myclasses folder.
2. Now FTP from the
selected files from client to Application Server in $JAVA_TOP in the same
directory as on the client
3. Next step is to run
the import cmd from command prompt
Path: /jdevbin/jdev/bin
4. Login though System
Administrator à Form function
Create a form function with type sswa jsp
function.
Web Html: OA.jsp?page=/path of page.
5.
Attach the Function Name with the Menu.
16.
Steps for
VO substitution?
1. About this Page-> VO, AM, EO, Path of
Page
2. Export Commad (in cmd Prompt)
3. New .jpr =Open page
4. Look for AM and VO or EO.
5. Copy the class files of VO,AM or EO
6. Decompile into Java and store it into
MyProjects (with respective directory structure)
7. Open VO.xml in a new jpr
8. Create a new BC4J based on your Original
VO.
9.
Create a new VO and extends original VO
10. Change the query
11. Rebuild the project
12. Go to .jpx(double click)
13. Go to Substitutions
14. Substitute Vo
15. Rebuild your Project .jpr
16. Transfer New VO class and xml to
respective directory structure
17. FTP .jpx into $JAVA _TOP
18. unix command promrt CD$ JAVA_TOP
19. jpx importer command
20. Bounce Apache Server
17.
Can we
Call VO in Controller? And How?
Yes, through OAViewObject Class
18.
What is
Partial Page Rendering? What is Tranisent view attribute?
PPR is a means by which designated parts of a page, rather than the
whole page, is refreshed when the user performs certain actions. OA Framework
supports PPR on actions such as: table record-set navigation, table sorting,
table column totaling, adding a row to a table, row-level and cell-level detail
disclosure, toggling the visibility of a Hide/Show component, populating a LOV,
subtab navigation, Gantt chart refreshing and descriptive Flexfields context
switching. Moreover, developers can declaratively enable PPR events on several
components. For example, a developer can:
Configure the selection of a poplist to cause
related fields to render, be updatable, be required or be disabled based on the
selected value.
Configure the value change of a text field to set
related field values (for example, if you set a Supplier value and tab to the
next field, the dependent Supplier Site defaults automatically).
Configure the selection of a master table's
record to automatically query and display related rows in a detail table.
In PPR, SPEL is used to bind the rendered, disable,
read-only property of an item or Region to its Transient View Attribute.
19.
What are
different methods for passing paramaters?
1. Tokens
eg. vname={@AttributeName}
2. Hash Maps
eg. HashMap variablename=nre HashMap();
variablename.add(“ParameterName”,ParameterValue);
3.ThroughSession
eg. pageContext.putSessionvalue(“ParamterName”,ParameterValue)
20.
When is
VO extensions not upgrade unsafe?
When VO is based on EO and EO is read only.
21.
When is
CO extension not upgrade safe?
In case of CO Extension we create new class …….
Here we have to use Super Keyword to make it safe.
22.
Difference
between Button and Submit Button?
In case of Submit Button browser send post request
to the server but in case of simple
button request is not send to the server, here we use Destination URL property of the button.
23.
What are
various command used in OAF?
import, export, xml Importer, jpx importer
No comments:
Post a Comment