components will often be used more than once. Whether the reuse happens within
the same application, or across different applications, it is often
advantageous to package these reusable components into a library that can be
shared between different developers, across different teams, and even across
departments within an organization.
the world of Java object-oriented programming, reusing classes and objects is
just standard procedure. With the introduction of the model-view-controller
(MVC) architecture, applications can be further modularized into separate
model, view, and controller layers. By separating the data (model and business
services layers) from the presentation (view and controller layers), you ensure
that changes to any one layer do not affect the integrity of the other layers.
You can change business logic without having to change the UI, or redesign the
web pages or front end without having to recode domain logic.
ADF and JDeveloper support the MVC design pattern. When you create an
application in JDeveloper, you can choose many application templates that
automatically set up data model and user interface projects. Because the
different MVC layers are decoupled from each other, development can proceed on
different projects in parallel and with a certain amount of independence.
Library further extends this modularity of design by providing a convenient and
practical way to create, deploy, and reuse high-level components. When you
first design your application, you design it with component reusability in
mind. If you created components that can be reused, you can package them into
JAR files and add them to a reusable component repository. If you need a
component, you may look into the repository for those components and then add
them into your project or application.
example, you can create an application module for a domain and package it to be
used as the data model project in several different applications. Or, if your
application will be consuming components, you may be able to load a page
template component from a repository of ADF Library JARs to create common look
and feel pages. Then you can put your page flow together by stringing together
several task flow components pulled from the library.
ADF Library JAR contains ADF components and does not, and cannot, contain other
JARs. It should not be confused with the JDeveloper library, Java EE library,
or Oracle WebLogic shared library.
Any data control can be packaged
When you are using ADF Business
Business components are the entity
Task Flow Templates
Task flows can be packaged into an
If you drop a bounded task flow
ADF bounded task flows built using
If an ADF task flow template was
You can package a page template
You can create declarative
You can also package up projects that have several different reusable components if you expect that more than one component will be consumed. For example, you can create a project that has both an application module and a bounded task flow. When this ADF Library JAR file is consumed, the application will have both the application module and the task flow available for use. You can package multiple components into one JAR file, or you can package a single component into a JAR file. Oracle ADF and JDeveloper give you the option and flexibility to create reusable components that best suit you and your organization.
You create a reusable component by using JDeveloper to package and deploy the project that contains the components into a ADF Library JAR file. You use the components by adding that JAR to the consuming project. At design time, the JAR is added to the consuming project's class path and so is available for reuse. At runtime, the reused component runs from the JAR file by reference.