Home  >  Blog  >   Oracle OAF

Oracle OAF Interview Questions

When applying for an Oracle OAF position, familiarizing yourself with an appropriate set of Oracle OAF-related questions gives you a competitive edge. In an effort to prepare you for that important Oracle OAF interview, we have compiled some of the top Oracle OAF interview questions and answers. Studying these questions benefits both freshers and experienced ones in acing the process.

Rating: 4

If you're looking for Oracle OAF Interview Questions for Experienced or Freshers, you are in the right place. There are a lot of opportunities from many reputed companies in the world. According to research, Oracle OAF has a market share of about 0.4%. So, You still have the opportunity to move ahead in your career in Oracle OAF Development. Mindmajix offers Advanced Oracle OAF Interview Questions 2024 that help you in cracking your interview & acquire a dream career as Oracle OAF Developer.

let us move on to the Oracle OAF Interview Questions and answers- updated (2024) one by one for the following-

  1. Freshers
  2. Experienced

Top 10 Oracle OAF Interview Questions

  1. What is a Controller?
  2. What is an extension?
  3. What are all the components of BC4J?
  4. What is the difference between inline lov and external lov?
  5. What is query Bean?
  6. What is rootAM?
  7. Which is the component responsible for user actions?
  8. What is the main Controller component in OAF?
  9. What are Validation View Objects?
  10. How do you create a view object?

Oracle OAF Interview Questions and Answers for Freshers

1. What is a Controller?

The controller is the java file and can be associated with a complete OAF page or to a specific region.

There are several tasks you will do routinely in your code.

  1. Handle button press and other events
  2. Automatic queries
  3. Dynamic WHERE clauses
  4. Commits
  5. JSP Forwards

The logic for accomplishing all these tasks is written in the controller

2. When is the process request method called?

PR method is called when the page is getting rendered onto the screen

3. When is the processFormRequest method called?

PFR method is called when we perform some action on the screen like the click of submit button or click on lov

4. What is an extension?

The extension is when you take an already existing component ex an OAF page or a region and then add some more functionality to it without disturbing the original functionality.

If you want to enrich your career and become a professional in Oracle Application Framework, then enroll in "Oracle OAF Training" This course will help you to achieve excellence in this domain.

5. What is personalization?

Oracle Apps Framework has an OA Personalization Framework associated with it so that you can personalize any OAF page in an Oracle E-business Suite application without changing the basic or underlying code of that OA Framework page, Oracle Application Framework makes it very easy to personalize the appearance of the page or even the personalization of data displayed on to an OA Framework page.

6. What are levels of personalization?

  1. Function Level
  2. Localization Level
  3. Site Level
  4. Organization Level
  5. Responsibility Level
  6. Admin-Seeded User Level
  7. Portlet Level
  8. User Level

7. What is BC4J?

Business Components for Java is JDeveloper’s programming framework for building multi-tier database applications from reusable business components. These applications typically consist of:

  1. A client-side user interface is written in Java and/or HTML.
  2. One or more business logic tier components that provide business logic and views of business objects.
  3. Tables on the database server that store the underlying data.

8. What are all the components of BC4J?

Following are the components of BC4J:

  1. Entity Object – EO encapsulates business logic and rules. EO’s are used for Inserting, Updating, and Deleting data from the database table. E0 is also used for validating the records across the applications.
  2. View Object – View object encapsulates the database query. It is used for selecting data. It provides iteration over a query result set. VO’s are primarily based on EO’s. It can be used on multiple EO’s if the UI is for the update.
  3. Application Module – Application Modules serve as containers for related BC4J components. The pages are related by participating in the same task. It also defines the logical data model and business methods needed.

9. What is an EO?

EO encapsulates business logic and rules.EO’s are used for Inserting, Updating, and Deleting Data. This is used for validating across the applications. We can also link to other EO’s and create an Association object.

 MindMajix YouTube Channel

10. What is a VO?

View object encapsulates the database query. It is used for selecting data. It provides iteration over a query result set.VO’s are primarily based on Eo’s. It can be used on multiple EO’s if the UI is for the update. It provides a single point of contact for getting and setting entity object values. It can be linked together to form View Links.

11. What is an AO?   

An association object is created where we link EO’s. For example, take the search page where we link the same EO to form an association between the manager and employee. Every employee should have a manager associated. But if it President then no there is no manager associated. This is a perfect example to understand AO.

12. What is a VL?

A view link is an active link between view links. A view link can be created by providing the source and destination views and source and destination attributes. There are two modes of View link operation that can be performed. A document and Master/Detail operation.

13. What is UIX?

UIX is an extensible, J2EE-based framework for building web applications. It is based on the Model-View-Controller (MVC) design pattern, which provides the foundation for building scalable enterprise web applications.

14. Where the VO is located in the MVC architecture?

VO is located in the View Layer in MVC which is responsible for presenting the data to the user.

15. Which package should include EO and AO?

The EO and AO will be present in the schema.server package.

16. What is the difference between inline lov and external lov?

Ans: Inline lov is a lov that is used only for that particular page for which it was created and cannot be used by any other page.
External lov is a common lov that can be used by any page. It is a common component for any page to use it. It can be used by giving the full path of the love in the properties section “External LOV” of the item.

Learn Oracle Application Framework (OAF) Tutorial

17. What is a JavaBean?

JavaBeans is an object-oriented programming interface that lets you build re-useable applications or program building blocks called components that can be deployed in a network on any major operating system platform.

18. What is query Bean?

QueryBean is used to execute and return the results of a query on behalf of the QueryPortlet application.

19. What is the difference between auto customization criteria and result-based search?

Results-based search generates search items automatically based on the columns on the results table.

In Autocustomization search we need to set what all fields are required to display as search criteria.

20. What is MDS?

MDS is a MetaData Service. When a web page is broken into small units like buttons, fields, etc they are stored in a database. These are not stored as binary files but as data in tables. The data are present in JDR tables. MDS provides service to store & return page definitions. MDS collects those definitions in components/fields in a meaningful manner to build a page.

21. What is XML?

XML is a markup language for documents containing structured information.

Structured information contains both content (words, pictures, etc.) and some indication of what role that content plays (for example, content in a section heading has a different meaning from content in a footnote, which means something different than content in a figure caption or content in a database table, etc.).

Oracle OAF Interview Questions and Answers for Experienced

22. What is the difference between customization and extension?

Customization is under direct user control. The user explicitly selects between certain options. Using customization a user can:

  1. Altering the functionality of an application
  2. Altering existing UI
  3. Altering existing business logic

The extension is about extending the functionality of an application beyond what can be done through personalization. Using extension we can:

  1. Add new functional flows
  2. Extend or override existing business logic
  3. Create a New application/module
  4. Create a New page
  5. Create New attribute
  6. Extend/Override defaults & validations

23. What is Personalization?

Personalization enables you to declaratively tailor the UI look-and-feel, layout, or visibility of page content to suit a business need or a user preference. Using Personalization we can:

  1. Tailor the order in which table columns are displayed.
  2. Tailor a query result.
  3. Tailor the color scheme of the UI.
  4. Folder Forms
  5. Do Forms Personalization

24. Can you extend every possible Application Module?

Ans: No. Root AM cannot be extended.

25. What is rootAM?

The application module which is associated with the top-level page region (the pageLayout region) is the root application module.

26. Why can’t Root AM be extended?

The root AM is loaded first and after that, the MDS Substitutions are parsed.
Hence ROOT AM gets loaded even before the time the substitutions definition from the MDS layer gets worked out. 
Obviously, the root am cant substitute itself, hence it can’t be extended

27. What are different methods for passing parameters?


eg. vname={@AttributeName}

Hash Maps
eg. HashMap variablename=nre HashMap();

eg. pageContext.putSessionvalue(“ParamterName”,ParameterValue)

28. What for isPreparedForExecution() and executeQuery() methods used?

isPreparedForExecution function will check whether all parameters are assigned properly and the query is ready for execution.

On multiple navigations to the page, this query will not be executed multiple times.

While executeQuery function is used for executing the VO query so that it can fetch the data from the database into the VO cache.

29. What is the pattern used in developing any OAF component?

MVC (Model, View, Controller)
Lists the components in the MVC architecture

  • Model: Application Module, View Objects, View Links, Entity Objects, Entity Associations, etc.
  • View: Page, Region, Attributesets etc.
  • Controller: Controller class files
Explore Oracle Application Framework Sample Resumes! Download & Edit, Get Noticed by Top Employers!

30. Which is the component responsible for user actions?

The controller is the object. The code present in ProcessFormRequest gets executed upon the user action.

31. If we have to initialize something during the page loading, which is the right place?

ProcessRequest() method of the Controller file is the right place.

32. What is the significance of ProcessFormData()?

For a ‘POST’ request the data on the page is bound to the view object in this method

33. Does the ‘GET’ request result in calling ProcessFormData()?

No, only POST request calls that.

34. What is the main Controller component in OAF?

OAController is the main class and our controller will become a subclass of it.

35. How does page structure get created at runtime?

OAPageBean is responsible for creating the bean hierarchy structure at runtime after calling ProcessRequest() of each of the beans in the hierarchy.

36. Where do the client BC4J objects get placed in the server?

They are located in the oracle.apps...server

37. Where does the server BC4J objects get placed in the server?

They are located in the oracle.apps...schema.server

38. Where do the Page and Controller related files get placed?

They are located in oracle.apps...WebUI

39. What are Validation View Objects?

They are the VVO’s used in the validation of attributes, they are the BC4J components and have their AM ie VAM Validation Application Module

40. What is a Database Connectivity File?

It is a .dbc file that is specified in the project properties. The location of this file on the server is $FND_TOP/secure

41. What is a View Object?

It is a BC4J(Business Component for Java) object which encapsulates the query results. View objects will support the display of the content to the user on the Page.

42. How do you create a view object?

View objects can be created in the Business components package, can be based on entity objects or an SQL query. View objects based on SQL query are read-only view objects

Join our newsletter

Stay updated with our newsletter, packed with Tutorials, Interview Questions, How-to's, Tips & Tricks, Latest Trends & Updates, and more ➤ Straight to your inbox!

Course Schedule
Oracle Application Framework (OAF) TrainingApr 20 to May 05View Details
Oracle Application Framework (OAF) TrainingApr 23 to May 08View Details
Oracle Application Framework (OAF) TrainingApr 27 to May 12View Details
Oracle Application Framework (OAF) TrainingApr 30 to May 15View Details
Last updated: 02 Jan 2024
About Author

Ravindra Savaram is a Technical Lead at Mindmajix.com. His passion lies in writing articles on the most popular IT platforms including Machine learning, DevOps, Data Science, Artificial Intelligence, RPA, Deep Learning, and so on. You can stay up to date on all these technologies by following him on LinkedIn and Twitter.

read more
Recommended Courses

1 / 15