What is Oracle ADF?
The Oracle Application Development Framework (Oracle ADF) is an end-to-end application framework that builds on J2EE standards and open-source technologies to simplify and accelerate implementing service-oriented applications. If you develop enterprise solutions that search, display, create, modify, and validate data using web,wireless, desktop, or web services interfaces, Oracle ADF can simplify your job. Used in tandem, Oracle JDeveloper 10g and Oracle ADF give you an environment that covers the full development lifecycle from design to deployment, with drag-and-drop data binding, visual UI design, and team development features built-in.
What are ADF BC(Business Components)? Describe them.
All of these features can be summarized by saying that using ADF Business Components for your J2EE business service layer makes your life a lot easier. The key ADF Business Components that cooperate to provide the business service implementation are:
Entity Object: An entity object represents a row in a database table and simplifies modifying its data by handling all DML operations for you. It can encapsulate business logic for the row to ensure your business rules are consistently enforced. You associate an entity object with others to reflect relationships in the underlying database schema to create a layer of business domain objects to reuse in multiple applications.
Application Module: An application module is the transactional component that UI clients use to work with application data. It defines an updatable data model and top-level procedures and functions (called service methods) related to a logical unit of work related to an end-user task.
View Object: A view object represents a SQL query and simplifies working with its results. You use the full power of the familiar SQL language to join, project, filter, sort, and aggregate data into exactly the “shape” required by the end-user task at hand. This includes the ability to link a view object with others to create master/detail hierarchies of any complexity. When end users modify data in the user interface, your view objects collaborate with entity objects to consistently validate and save the changes.
What are various components in ADF?
Oracle ADF has following components
ADF Business Components: VO, EO & AM
ADF Model : DataBinding (.cpx, .xml) & DataControls(.dcx)
ADF View: JSP, JSF, ADF Faces etc.
ADF Controller: Task flows (adf-config.xml), faces-config.xml
How will JDeveloper support rapid development?
Oracle ADF is an Oracle product. Ide used to develop ADF application which is Oracle JDeveloper. This IDE is has all component which support in rapid developer starting form designing Application using the UML to Java, Visual Designer, DataBase development, Testing Webservices to Deployment. Most of the feature are just drag and drop. Hence this IDE become the perfect choice for ADF development. Although it bit slow and hangs sometime but still we don’t have any other option.
What is the controller in ADF in respect of MVC architecture?
Controllers in ADF framework are TaskFlows, Faces-config.xml, adfc-config.xml. In all there file you can define navigation between the pages.
What is Association in ADF?
Association represent the relationship between 2 and more tables like foreign key relationship. If you create Entities from database association will automatically got created for entity. User can also define custom association if there is no foreign-key is define in database. In this way user can handle foreign key in ADF application and can remove overhead from database.
What is Entity Object in ADF Framework?
EnitityObject in ADF are similar to Table in database. Any number of ViewObejct can create on single Entity.
What is ViewObejct in ADF framework?
ViewObject is represent the data collection. These view object can be created in different ways which are as follows:
Entity Based ViewObject: These viewobejct will hold the reference of underlying entity. These view object can hold data from single or multiple entities. While defining Viewobject based on Entity you can select the attribute which you want to keep in entity.
SQL Based ViewObject: These ViewObejct are based on sql quarries. These viewobejct will have underlying SQL Query. At runtime they will hold data return by SQL.
Programatic View Object: User can define the view attribute which defining viewobejct. Data will insert programmatically into these ViewObject.
Static ViewObject : While defining user will define attribute for view and in later he has to provide the values for those attribute. These kind of viewobejct will have fixed no of rows.
What is Control Hints in Entity Object configuration?
Control hints are associated with the current view or entity attribute. All view objects inherit the hint values at run time.
Control hints for data controls and bindings, including: Labels, Date & currency formatting.
Can an entity object be based on two Database Objects(tables/views) or two Webservices?
No, Directly its not possible to create EO using multiple tables.
Entity objects will always have one to one relationship with a database object or web service.
But using views you can create Entity Objects on multiple tables.
What are the JSF life-cycle phases?
The six phases of the JSF application lifecycle are as follows (note the event processing at each phase):
- Restore view
2. Apply request values; process events
3. Process validations; process events
4. Update model values; process events
5. Invoke application; process events
6. Render response
What is Top Link?
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.
Differences between King Beans and Managed Beans?
king Beans | Managed Beans |
A backing bean is any bean that is referenced by a form. | A managed bean is a backing bean that has been registered with JSF (in faces-config.xml) and it automatically created (and optionally initialized) by JSF when it is needed. |
The advantage of managed beans is that the JSF framework will automatically create these beans, optionally initialize them with parameters you specify in faces-config.xml, | |
Backing Beans should be defined only in the request scope | The managed beans that are created by JSF can be stored within the request, session, or application scopes |
What is the return type of Service Methods?
Service Methods can return Scalar or Primitive Data types.
How do you decide whether the application should be deployed as an EAR or a WAR?
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.
Explain Data binding & its types, sub-types?
Oracle Application Development Framework (Oracle ADF) provides several types of binding objects to support the attributes and operations exposed by the Oracle ADF data controls for a particular business object:
ITERATOR BINDING, one per accessor attribute that your page or panel displays. Iterates over the business objects of the data collection and maintains the row currency and state.
VALUE BINDINGS, one for each data-bound UI component. Provides access to data.
ACTION BINDING, specifically defined for a button component. Provides access to operations defined by the business object.
Value Binding Types:
- Attribute Value Binding
2. Boolean Value Binding
3. List Value Binding
4. Range Value Binding
5. Scroll Value Binding - What is task flow?
ADF task flows provide a modular approach for defining control flow in an application. Instead of representing an application as a single large JSF page flow, you can break it up into a collection of reusable task flows. Each task flow contains a portion of the application’s navigational graph. The nodes in the task flows are activities. An activity node represents a simple logical operation such as displaying a page, executing application logic, or calling another task flow. The transactions between the activities are called control flow cases.
Advantage of Task Flow Over JSF flow?
ADF task flows offer significant advantages over standard JSF page flows
-The application can be broken up into a series of modular flows that call one another.
-You can add to the task flow diagram nodes such as views, method calls, and calls to other task flows.
-Navigation is between pages as well as other activities, including routers.
-ADF task flows are reusable within the same or an entirely different application. After you break up your application into task flows, you may decide to reuse task
-Shared memory scope (for example, page flow scope) enables data to be passed between activities within the task flow. Page flow scope defines a unique storage area for each instance of an ADF bounded task flow.
Explain Data Control Palette hierarchy
Data Control Palette hierarchy: The Data Control Palette displays two types of actions:
Actions that typically operate on all data collections in the current web page’s binding context (such as Commit and Rollback) in the Operations folder at the root level of the hierarchy.
Operations on a specific data collection (for example, MyView1). Data collection-specific operations (such as Create and Delete) appear in the Operations folder as child nodes of the collection in the Data Control Palette.
What is Association Accessor?
It’s an operation by which an entity instance at one end of and association can access the related entity object instance at the other end of the association. An Accessor that travels from destination to source is called a source assessor and an accessor that travel from source to destination is called a destination accessor.
It is described in the entity object definition xml files which can be used by view object and view link definition to specify cross entity relationship. Its return type will be the entity object class of associated entity object definition or ‘EntityImpl’ if the associated entity object definition has no entity object class.
What are various components in ADF?
- Oracle ADF has following$ components
- ADF +business (components Model)
- ADF Faces (view)
- ADF Task flows(controller)
What are the different kinds of Bean Scopesin JSF?
JSF supports three Bean Scopes.
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.
Session Scope: The session scope persists from the time that a session is established until session termination.
Application Scope: The application scope persists for the entire duration of the web application. This scope is shared among all the requests and sessions.