Friday, 19 November 2021

Top 20 Oracle ADF Interview Questions & Answers

 

Ques: 1). What is Oracle ADF, and how does it work?

Answer: 

The Oracle Application Development Framework (Oracle ADF) is an end-to-end application framework that simplifies and accelerates the implementation of service-oriented applications by leveraging J2EE standards and open-source technologies. Oracle ADF can help you construct enterprise applications that use web, wireless, desktop, or web services interfaces to search, display, generate, change, and validate data. With drag-and-drop data binding, visual UI design, and team development tools built-in, Oracle JDeveloper 10g and Oracle ADF provide an environment that covers the whole development lifecycle from design to deployment.

 

Ques: 2). What is Managed Bean, and how does it work?

Answer: 

Managed beans are JavaBean objects that are managed by a JSF implementation. A managed bean represents the process of creating and managing a bean. It has nothing to do with the functionality of the bean.

A managed bean is one that is produced and initialised in a controlled manner. JSF, as you may know, employs a lazy initialization model. It means that the bean in a specific scope is created and initialised on-demand, that is, when the bean is requested for the first time.

 

Ques: 3). What exactly is task flow?

Answer: 

ADF task flows are a modular way to defining application control flow. You can break up an application into reusable task flows rather than portraying it as a single huge JSF page flow. A piece of the application's navigational graph is contained in each task flow. The activities are the nodes in the task flows. A simple logical process, such as displaying a page, running application logic, or calling another task flow, is represented by an activity node. Control flow cases are the interactions between the activities.

 

Ques: 4). What Are the Benefits of Task Flow Over JSF Flow?

Answer: 

  • ADF task flows have a number of advantages over JSF page flows.
  • The app can be divided into a set of modular processes that communicate with one another.
  • Views, method calls, and calls to other task flows can all be added to the task flow diagram.
  • Navigation is used to move between sites and other operations, such as routers.
  • Task flows created using ADF can be reused inside the same or a different application. You might decide to reuse task flows after you've broken up your application into task flows.
  • Data can be transmitted between activities inside the task flow using shared memory scope (for example, page flow scope).
  • Page flow scope defines a unique storage area for each instance of an ADF bounded task flow.

 

Ques: 5).  What Is Adf Event Handling and How Does It Work?

Answer: 

Event handling is normally done on the server in classic JSF applications. JSF event handling is based on the JavaBeans event paradigm, in which the JSF application uses event classes and event listener interfaces to handle events provided by components.

Clicking a button or link, selecting an item from a menu or list, and altering a value in an input field are all examples of user events in an application. When a user activity, such as pressing a button, occurs, the component creates an event object, which holds information about the event and identifies the component that caused it. An event queue is also created for the event. JSF instructs the component to broadcast the event to the relevant registered listener at the appropriate point in the JSF lifecycle, which then calls the listener method to process the event. The listener method can either update the user interface or call backend application logic.

ADF Faces command components, like regular JSF components, send out ActionEvent events when they're triggered, while ADF Faces input and select components send out ValueChangeEvent events when their local values change.

 

Ques: 6). What is Association Accessor?

Answer: 

It's a method for an entity instance at one end of an association to communicate with the linked entity object instance at the other end. A source assessor travels from the destination to the source, while a destination assessor travels from the source to the destination.

It is described in the entity object definition xml files, which can be used to specify cross entity relationships by view object and view link definition. Its return type is either the associated entity object definition's entity object class or 'EntityImpl' if the associated entity object definition does not have an entity object class.

 

Ques: 7).  What Is The Difference Between Datacontrol.dcx And Databindings.cpx?

Answer: 

The Oracle ADF binding context for your entire application is contained in the DataBindings.cpx file, which also contains the metadata from which the Oracle ADF binding objects are constructed at runtime. When you register data controls on business services, the DataControls.dcx file is created. Oracle ADF Business Components does not generate this file. It specifies the Oracle ADF model layer data control classes (factory classes) that help the client and the accessible business service interact.

 

Ques: 8). Why did you choose ADF?

Answer: 

I had already developed a strong interest in technology with the goal of making a substantial impact. As the main development framework, ADF may be used to create virtually any form of enterprise application. I became interested in this technology since it is so beneficial. Of course, this is in keeping with my goals and ambitions.

Second, ADF is widely recognised as the most advanced J2EE development framework. As a result, the ADF 11g is used to build the Oracle Fusion Middleware stack. This is why we have so many options here.

Finally, ADF contains a number of built-in components that help us with the work of developing code. This way, I can actually focus on the features of the application and how it can do more good to the business.

 

Ques: 9). What Is The Difference Between A Binding Context And A Binding Container?

Answer: 

The binding context, which is used to access the binding layer, is a runtime map between data controls and page definitions of pages in the application. The EL expression on your jspx pages gives you access to it. The page bindings are instantiated using the binding container, which is a request-scoped map. The EL expressions provide access to this. It is also accessible throughout every page request because it is a request-scoped map.

 

Ques: 10). What Is The Distinction Between Visible And Render Property?

Answer: 

The visible property is set to true or false depending on whether the field should be visible on the page at run time. Even though the field or component is hidden, it still exists on the page.

The render attribute is used to load the component conditionally based on a set of criteria.

 

Ques: 11).  In Adf, how do you define pagination?

Answer: 

In ADF, we establish custom pagination by utilising the af:iterator tag to create a custom table as a taskflow. This renders the data collection in the same way that a table does. Now, using the ADF bindings declaration, we tie the value property of the iterator to the collection model and set the number of visible rows to 15, for example.

 

Ques: 12).  What is the Adf Lifecycle and how does it work?

Answer: 

The ADF Lifecycle is divided into nine stages:

  1. Set the Context: The lifecycle, the binding container, and other values are all set.
  2. Create the Model: The application model is created by providing it with the necessary parameters. ADF is also provided the necessary instructions.
  3. Apply Input Values: This phase handles the application's access request.
  4. Validate Input Values: Verifies the values specified in phase 3 of the request.
  5. Update Model: Data is stacked up and updated when the input values have been validated.
  6. Validate Model Updates: Validate the updated input values.
  7. Process Component Updates: This is where all activities involving input values are handled.
  8. Metadata Commit: Commits the metadata runtime to the model.
  9. Prepare Render: All the activities and the final page is sent to render.

 

Ques: 13).  What Is The Difference Between Valuators And Converters?

Answer: 

To give conversion and validation capabilities to the ADF input components, Valuators and Convertors are used.

After the values on ADF forms are changed and submitted, converters convert the values to the type that the application accepts.

Valuators are used to enforce input component validations.

 

Ques: 14). What is Partial Page Rendering, and how does it work?

Answer: 

PPR (Partial Page Rendering) is quite similar to Ajax. PPR is a dynamic system that takes appropriate action as needed. It triggers the page when it needs to be triggered. It updates the page when it needs to. Once all of the activities are in order, PPR submits the page.

You'll need to do the following to allow partial page rendering:

Auto-submit: When auto-submit is on or set to true, the page automatically submits the values updated or changed on the page.

PartialSubmit: When the partialSubmit is set to true, the changes and updates on the page submit the page partially.

Partial trigger: When the partial trigger is on, the page renders are simply listed. Once the triggers are settled, final changes are considered.

 

Ques: 15).   Is ADF a better framework than JSF?

Answer: 

The ADF framework is based on the JSF. When it comes to processing any business application, ADF is quite smooth.

Let's look at it from the user's perspective:

The ADF possesses the following:

  • The UI is simple and straightforward to use.
  • Even if they are viewing it for the first time, anyone can readily access it.
  • Almost everything is in one location.
  • The appearance and feel are smooth and solid.
  • From the developer's perspective:
  • It's a simple platform on which to build an application.
  • More than a hundred components that are ready to use
  • Components that can be edited to alter the functionality
  • Simple to keep up with
  • Simple to set up
  • Simple to use
  • Drag and drop functionality is available.

As ADF is built on JSF, any time ADF will give you a nicer and smoother performance. JSF is, nonetheless, a very good platform too. But when it comes to comparison, ADF is better.

 

Ques: 16). What is the Role Of View Object, Entity Object, and Application Module?

Answer: 

View object: View objects show the modifications made by the user to Taskflows projects. VO aids the system in sorting through the user's actions. And it organises, filters, and maintains the task so that SQL queries may quickly discover the results when they're looking for them.

Entity object: In a database, an entity object is a row. EO is the ADF, similar to EJB in J2EE. The values in the row are also easy to recognise with EO. It encapsulated the entire row in a specific value. As a result, searching for any value in the row becomes much easier. Even two EOs might be related to one another and grouped together based on their relationship. Entity Associations are a group of connected EOs.

An application module allows a customer to access their work via the platform. AM contains all of the essential and top-level processes, as well as the most up-to-date information. AM is sometimes referred to as the transactional module because it lets clients to access their own work. In the View link form, there are also numerous VO and Entity Associates.

 

Ques: 17). What Does It Mean To Be A Phase Listener?

Answer: 

The Oracle ADF lifecycle is fully integrated with the JavaServer Faces request lifecycle, including everything needed to set up the binding context, prepare the binding container, validate and update the ADF model, persist MDS changes, and prepare the response.

An ADF Phase Listener can be used by developers that need to listen to and engage with the request cycle. The ADF Phase Listener, unlike the Phase Listener defined in the faces-config.xml file, allows you to listen to both the standard and ADF phases. Of course, the ADF Phase Listener is written in Java and configured in the adf-settings.xml file you must generate.

The ADF PagePhaseListener can be used in any situation.

Developers can utilise either a conventional JSF listener or a particular ADF listener in the Oracle ADF framework, which provides extra ADF-specific page cycle enhancements. The ADF Lifcycle can be customised with listeners.

 

Ques: 18). What Is Inter-Portlet Communication, and How Does It Work?

Answer: 

When an action in one portlet causes a reaction in another, this is known as inter-portlet communication. It serves as a link between two portlets. One portlet, for example, has a checkbox with a list of products. When I select a product from the list and press the submit button, the other portlet displays the product's data.

 

Ques: 19). What is the meaning of Association Accessor?

Answer: 

It's a method for an entity instance at one end of an association to communicate with the linked entity object instance at the other end. A source assessor travels from the destination to the source, while a destination assessor travels from the source to the destination.

It is described in the entity object definition xml files, which can be used to specify cross entity relationships by view object and view link definition. Its return type is either the associated entity object definition's entity object class or 'EntityImpl' if the associated entity object definition does not have an entity object class.

 

Ques: 20). What are the various Bean Scopesin JSF types?

Answer: 

Three Bean Scopes are supported by JSF.

Request Scope: The request scope is only valid for a certain time. It begins with the submission of an HTTP request and finishes with the delivery of the response to the client.

Session Scope: From the time a session is formed until it is terminated, the session scope persists.

Application Scope: The application scope remains constant throughout the web application's lifecycle. The scope of all requests and sessions is the same.



No comments:

Post a Comment