Question: What is PPR and how do you enable Partial Page Rendering(PPR)?
Answer: PPR is a feature supported by ADF Faces, using which we can render a small portion of a HTML Page, without refreshing the complete page. It is enabled by:
1. Setting AutoSubmit property to true on the triggering element.
2. Setting the PartialTriggers property of target component to refer to component id of the triggering element.
Question: In which xml do you configure the skin for your framework application?
Answer: In trinidad-config.xml file
Question: What is the purpose of jazn-data.xml?
Answer: This file is used for defining the permissions and privileges for various groups of users on various taskflows created in the application.
Question: What is policy store and identity store in OID?
Answer: Identity Store is used to store information about users and groups while the Policy Store is used to store information about security policies.
Question: What is the difference between databindings.cpx and datacontrol.dcx?
Answer: The DataBindings.cpx file contains the Oracle ADF binding context for your entire application and provides the metadata from which the Oracle ADF binding objects are created at runtime. The DataControls.dcx file is created when you register data controls on the business services. This file is not generated for Oracle ADF Business Components. It identifies the Oracle ADF model layer data control classes(factory classes) that facilitate the interaction between the client and the available business service.
Question: What is binding context and binding container?
Answer: Binding context is a runtime map between the data controls and page definition of pages in the application which is used to access the binding layer. It is accessible through the EL expression in your jspx pages. Binding container is a request-scoped map that is used to instantiate the page bindings. This is accessible through the EL expressions. Also, since it is request-scoped map, it is accessible during every page request.
Question: In case of java control or EJB, does it have a datacontrol.dcx file?
Answer: datacontrols.dcx exists when you create custom data controls based on POJOs, web services, EJBs and the like. It describes or stores the metadata about the data control, essentially the wiring required to make the underlying service (e.g. POJOs, web services) exposed through the data control palette, and the runtime settings so the ViewController layer knows how to make use of it.
Question: What is the difference between trinidad.config and trinidad.skins?
Answer: trinidad.config file is created when you create a webcenter portal application. This is used to register the skin-family you are going to use for your entire application. Trinidad.skins is used when we use skin as a Jar file. This file provides a mapping between the Skin Id and the actual path where the skin exists.
Question: How do you decide whether the application should be deployed as an EAR or a WAR?
Answer: If the application contains run-time customizations using MDS, it must be bundles as an EAR. For simple webcenter portal application with no such customizations, WAR can be created.
Question: What is Top Link?
Answer: Top Link is an Object-Relational Mapping layer that provides a map between the Java objects that the model uses and the database that is the source of their data. By default, a session is created named default. In the following steps, you create a new session.
Question: Describe life cycle of an ADF Page?
Answer: PPR is a feature supported by ADF Faces, using which we can render a small portion of a HTML Page, without refreshing the complete page. It is enabled by:
1. Setting AutoSubmit property to true on the triggering element.
2. Setting the PartialTriggers property of target component to refer to component id of the triggering element.
Question: In which xml do you configure the skin for your framework application?
Answer: In trinidad-config.xml file
Question: What is the purpose of jazn-data.xml?
Answer: This file is used for defining the permissions and privileges for various groups of users on various taskflows created in the application.
Question: What is policy store and identity store in OID?
Answer: Identity Store is used to store information about users and groups while the Policy Store is used to store information about security policies.
Question: What is the difference between databindings.cpx and datacontrol.dcx?
Answer: The DataBindings.cpx file contains the Oracle ADF binding context for your entire application and provides the metadata from which the Oracle ADF binding objects are created at runtime. The DataControls.dcx file is created when you register data controls on the business services. This file is not generated for Oracle ADF Business Components. It identifies the Oracle ADF model layer data control classes(factory classes) that facilitate the interaction between the client and the available business service.
Question: What is binding context and binding container?
Answer: Binding context is a runtime map between the data controls and page definition of pages in the application which is used to access the binding layer. It is accessible through the EL expression in your jspx pages. Binding container is a request-scoped map that is used to instantiate the page bindings. This is accessible through the EL expressions. Also, since it is request-scoped map, it is accessible during every page request.
Question: In case of java control or EJB, does it have a datacontrol.dcx file?
Answer: datacontrols.dcx exists when you create custom data controls based on POJOs, web services, EJBs and the like. It describes or stores the metadata about the data control, essentially the wiring required to make the underlying service (e.g. POJOs, web services) exposed through the data control palette, and the runtime settings so the ViewController layer knows how to make use of it.
Question: What is the difference between trinidad.config and trinidad.skins?
Answer: trinidad.config file is created when you create a webcenter portal application. This is used to register the skin-family you are going to use for your entire application. Trinidad.skins is used when we use skin as a Jar file. This file provides a mapping between the Skin Id and the actual path where the skin exists.
Question: How do you decide whether the application should be deployed as an EAR or a WAR?
Answer: If the application contains run-time customizations using MDS, it must be bundles as an EAR. For simple webcenter portal application with no such customizations, WAR can be created.
Question: What is Top Link?
Answer: Top Link is an Object-Relational Mapping layer that provides a map between the Java objects that the model uses and the database that is the source of their data. By default, a session is created named default. In the following steps, you create a new session.
Question: Describe life cycle of an ADF Page?
Answer: ADF page is an extension of JSF and has following phases in its
lifecycle:
1.
Initialize Context: In this phase
the ADF page initializes the Lifecycle Context with information that will
be used during the Lifecycle.
2.
Prepare Model: In this
phase UI model is prepared and initialized. In this phase page parameters
are set and methods in the executable section of the page definition of
the ADF page are executed.
3.
Apply Input Values: This phase
handles the request parameters. The values from the HTML are sent to the
server and applied to the page binding in page definitions.
4.
Validate Input Values: This phase
validates the values that were built in the Apply input values phase
5.
Update Model: Validated
values supplied from user are sent to ADF business components data model
6.
Validate Model Updates: In this
phase the business components will validate user supplied values.
7.
Invoke Application: This phase
will process the UI events stack built during the life cycle of page and
also fire navigational events
8.
Prepare Render: This is the
final phase where HTML code is generated from the view tree.
Question: What are the different kinds of Bean Scopes in JSF?
Answer: JSF supports three Bean Scopes:
1. Request Scope: The request scope is short-lived. It starts when an HTTP request is submitted and ends when the response is sent back to the client.
2. Session Scope: The session scope persists from the time that a session is established until session termination.
3. Application Scope: The application scope persists for the entire duration of the web application. This scope is shared among all the requests and sessions.
Question: Explain type of Scopes in Fusion Web Applications?
Answer: There are seven types of scopes in a Fusion web application: Scopes listed below in descending order with first one having longest life time and last one lowest life time.
Application scope -> Session scope ->Page flow scope -> View scope ->Request scope ->Backing bean scope
1. Application scope: An application scope object is available for the duration of the application and is shared among users. This scope may be used to hold static objects that are the same for all users.
2. Session scope: The object is available for the duration of the session, which is user instance-specific. A use case for a session scope bean is a user info bean that stores information about a user, which is read from the database or an LDAP server, to avoid unnecessary queries.
3. Page flow scope (Task flow scope): A pageFlow scope exists for each task flow instance and has a lifespan between request and session scope. The lifetime of the scope spans across all pages in a bounded task flow.
4. Request scope: The object is available from the time an HTTP request is made until a response is sent back to the client. From another perspective, a request scope starts with a request to be issued from one view to another for navigation cases that don't perform a redirect but a default server-side forward. The scope spans across all non-view activities that follow the view of interest to the next view activity.
5. Backing bean scope: The backing bean scope is comparable to the request scope, with the difference in that it exists for a specific client component. In general, all managed beans used in reusable components should be configured to backingBean scope. For example, bounded task flows that are designed to be regions on a page should use the backingBean scope if more than one instance of the task flow is expected to be on a single page.
6.View scope (Page Scope): The object is available until the view ID for the current view activity changes. This becomes handy when you use partial page rendering. If you have a dependent list box, you might send a server request to refresh the list box. When a response is returned, the request scope will be gone but the view scope will be still there. Therefore, view scope can be used to store data when partial rendering request comes back. The view scope exists not only for views that are rendered by JSPX pages, but also for views rendered by page fragments, as is the case in task flows that are built to execute in a region. The view scope of the parent page is not accessible from components added to a page fragement in a region, and the view scope of a view in a region is not accessible for the parent page.
7. None: When you create objects (such as a managed bean) that require you to define a scope, you can set the scope to none, meaning that it will not live within any particular scope, but will instead be instantiated each time it is referenced. You should set a bean's scope to none when it is referenced by another bean.
Out of these View scope, Backing bean scope and page flow scope are ADF specific. Rest comes with JSF. This is the reason you must define ADF specific scoped backing beans ether in "adf-config.xml" or task flow. You access objects in those scopes via expression language with scope qualification. For instance, to reference the aaBean managed bean from viewScope scope, your expression would be: #{viewScope .aaBean }.
Question: What is JSR-227 Specification?
Answer: Oracle has submitted a new JSR called "A Standard Data Binding & Data Access Facility for J2EE". This proposed spec will define a framework of classes called Declarative Bindings, that formalize the interactions between typical UI components and values and methods available in your business logic.
No comments:
Post a Comment