Developer Tools
JDeveloper
You can work in JDeveloper's IDE to customize and personalize an application that is built with Oracle ADF Faces and Oracle ADF Business Components. There are two types of customizations: seeded and user customizations. User customizations in an application allow end users to make changes to certain UI components at runtime to suit individual preferences (for example, which columns are visible in a table), and have those changes "remembered" during the user's session or every time the user opens the application. Seeded customizations in an application means the developer can take the application and make modifications to it to suit the needs of a particular group, such as an industry or site.
Install the Schema: Download the schema zip file from OTN and install it. The cue cards use tables that are part of the Fusion Order Demo (FOD) schema.
Create a New Application: Use the Create Application wizard to create an application that uses the Fusion Web Application (ADF) template.
Create a Database Connection: Use the Create Database Connection dialog to create a connection to the schema.
Create Oracle ADF Business Components Objects: Use the Create Oracle ADF Business Components wizard to create the business components that will provide access to data and implement the business logic.
Define a Customization Layer and the Layer Values: Add customization layer values to the files CustomizationLayerValues.xml and customization.properties.
Create and Deploy a Customization Class: Create the customization class that evaluates which customization layer should be applied to the application's base definition metadata. Then deploy the customization class to a JAR and register the class in the customizable application.
Enable Seeded Customizations and Create Customizable JSF Pages: Use the Project Properties dialog to enable seeded customizations in the project. Then create JSF pages that allow customizations to be made.
Use the Customization Developer Role to Customize the Pages and a View Object: Use the Preferences - Roles dialog to switch to the Customization Developer role. Then in the Customization Context window, select the layer value before you begin implementing customizations. Run the application after making the customizations.
Run the Application in the Customization Layer: Run the customized application, switching between active layer values to see the different customized contents.
Enable User Customizations for the Duration of a Session: Use the Preferences dialog to switch to the Default role for user customizations. Use the Project Properties dialog to enable user customizations for the duration of a session.
Enable User Customizations Across Sessions: Use the Project Properties dialog to enable user customizations across sessions. Edit the adf-config.xml file to include the elements to use a repository and customization class for change persistence. Then configure the components and attributes that you want to be persisted in the repository.
Configure ADF Security and Create a User: Configure Oracle ADF Security using a wizard. Then define an application role, create a user and assign it to the role, and grant permissions to the role.
Run and Personalize the Application: Log in to the application. Then personalize the application by making changes to persistent component attributes such the table column's width and the order of columns displayed in the table.
The steps and examples in the cue cards are based on tables that are part of the Fusion Order Demo (FOD) schema. This schema is also used as the database for the sample application that ships with Oracle JDeveloper 11g, as well as other collateral in this release. It will be convenient to have this schema installed, and you only need to do it once. If you have already installed the FOD schema, you can skip this step and go directly to the next card. [ tell me more...]
c:\temp).c:\temp\Infrastructure\Infrastructure.jws.jdeveloper.home, and all the jdbc.* and db.* settings). Keep all other properties set to their default values. The demo user must be named FOD. /jdeveloper directory where you have JDeveloper installed, for example, c:/JDeveloper_11/jdeveloper/ jdbc:oracle:thin:@localhost 1521 XE or ORCL system USERS
After running the Ant task, you should see a build successful message in the JDeveloper Log window. [ tell me more...]
The JDeveloper application is the highest level in the organizational structure. It stores information about the objects you are working with, while you are creating your application. It keeps track of your projects and the environment settings. [ tell me more...]
CustomizeApp as the application name, and oracle as the application package prefix.
Application templates provide you with a quick way to create the project structure for standard applications with the appropriate combination of technologies already specified. The new application created from the template appears in the Application Navigator already partitioned into tiered projects, with the associated technology scopes set in each project. [ tell me more...]
When you complete the steps for creating a new application and project, the Projects panel in the Application Navigator should look like this: [ tell me more...]
You can connect to any database for which you have connection details, or install the sample schema used in the cue card examples and then establish a connection to it. If you installed the sample schema, you will be able to follow the steps in the cue cards exactly as written. If you work with your own database, you can supply your own values as needed. [ tell me more...]
FOD for the connection name and fod for the username.
When you complete the steps for creating a database connection, the Application Navigator should look similar to this when you expand the Application Resources panel. The database connection is now included as a resource for your application under the Connections | Database nodes. [ tell me more...]
Oracle ADF Business Components is a model layer technology in the Oracle Application Development Framework (Oracle ADF). A fully-featured, XML-based framework for creating business services, ADF Business Components governs the interaction between the rest of the application and the data stored in the data source, providing validation, specific services, and other business logic. [ tell me more...]
The ADF Business Components project requires a database connection that you will use to create business components from database objects. The database connection you specify will also be used by the Oracle ADF Business Components runtime to manage session facade failover and state management. [ tell me more...]
The Create Business Components from Tables wizard allows you to easily create a package of business domain components (entity objects, associations, and domains) from existing database objects and optionally to create a default package of data model components (view objects, view links, and an application module) from these newly generated business domain components. [ tell me more...]
FODAppModule. Then click Finish .
After completing the Create Business Components from Tables wizard, the Model project and the Data Controls panel in the Application Navigator should look similar to this: [ tell me more...]
A customizable application means you can take the application and make modifications to it to suit the needs of a particular group, such as an industry or site. In Oracle Application Developer Framework (ADF) applications, you can create customization classes and layers to support the customization of metadata content, and then customize the metadata within the context of a specified layer. [ tell me more...]
<JDEVELOPER_HOME>/jdeveloper/jdev.
In Oracle Application Developer Framework (ADF) applications, the Oracle Metadata Services (MDS) framework allows you to create customizable applications. You create customization classes and layers to support the customization of metadata content, and then customize the metadata within the context of a specified layer. In this cue card you will create a customization layer. You will create a customization class in the next cue card. [ tell me more...]
customization.properties as the file name.src after Model (for example, <JDEVELOPER_HOME>/jdeveloper/mywork/CustomizeApp/Model/src). Then click OK.
When you complete the steps for defining a customization layer, the Model project in the Application Navigator should look like this: [ tell me more...]
A customization class is the interface that the Oracle Metadata Services (MDS) framework uses to define which customization layer should be applied to the application's base definition metadata. [ tell me more...]
SiteCC as the class name, and oracle.model.mycompany as the package name. In the Extends field, enter oracle.mds.cust.CustomizationClass. Click OK.
A customization class is the interface that the Oracle Metadata Services (MDS) framework uses to define which customization layer should be applied to the application's base definition metadata. Each customization class corresponds to a customization layer. The customization class evaluates the current context and returns a String result. This String result is used to locate the customization layer. [ tell me more...]
Successful compilation message in the Messages Log window.siteccarchive1 as the deployment profile name, and click OK.
Deployment profiles are used to define the settings for archives in order to deploy a project or an application to an external server. In the example, you are creating a profile for deploying a simple archive to the file system. JDeveloper will use the deployment profile name you enter in the Create Deployment Profile dialog as the name of the generated JAR when you deploy the project. [ tell me more...]
<JDEVELOPER_HOME>jdeveloper\jdev\lib\patches< jar_file_name> .Deployment Finished message in the Deployment Log window.sitecc then select the class SiteCC (oracle.model.mycompany). Click OK.
Be sure to select the SiteCC (oracle.model.mycompany) class in the Edit Customization Class dialog. [ tell me more...]
When you complete the steps for creating and deploying a customization class, the Application Navigator should look similar to this: [ tell me more...]
Before you start creating JSF pages, you will enable seeded customizations in the project. To do this, you will open the Project Properties dialog by right-clicking the ViewController project in the Application Navigator, and choosing Proj ect Properties from the context menu. In the dialog, you will select ADF View, then select the checkbox to enable seeded customizations. [ tell me more...]
Seeded customization of an application is the process of taking a generalized application and making modifications to suit the needs of a particular group, such as a specific industry or site. [ tell me more...]
orders-task-flow-definition.xml as the file name. Make sure Create as Bounded Task Flow is selected. Deselect Create With Pa ge Fragments , if selected. Then click OK.
An ADF task flow is a reusable unit for defining control flow between activities in an application. Each task flow in the application contains a portion of the application's navigational graph, enabling users to complete a task. For example the following illustration shows a simple task flow with two activities, Create and Confirm. The arrows between the activities are known as control flow cases. Activities could be view pages, method calls, or operations calling other task flows. [ tell me more...]
Browse. In the Component Palette, click More.goMore.goBrowse.
The Data Controls panel is a JDeveloper data binding tool that is part of the Application Navigator. The Data Controls panel shows the structure of your business components data model in a hierarchical display of available business objects, methods, and data control operations. [ tell me more...]
More Details. In the Action field, select goMore from the dropdown list.Return. In the Action field, select goBrowse from the dropdown list.
By default, JDeveloper automatically configures an integrated server named Integrated WebLogic Server that references a user-specific instance of Oracle WebLogic Server bundled with the IDE. Integrated WebLogic Server is a Java EE runtime service for packaged archive deployment. Based on zero-copy deployment, Integrated WebLogic Server lets you run and test an application and its projects as a Java EE application in a Java EE container. No special connection setup is required to use Integrated WebLogic Server. You can run the entire application, a project, or individual JSF pages. [ tell me more...]
When you complete the steps for creating customizable JSF pages, the ViewController project in the Application Navigator should look similar to this): [ tell me more...]
A customized application contains a base application and one or more layers of customized metadata content. MDS stores the customized metadata objects in a metadata repository and retrieves them at runtime to reveal the customized application. When a customized application is launched, the customized content is applied over the base application. [ tell me more...]
You can make metadata customizations in an application only when you are working in the Customization Developer role. In that role, customization features are enabled in the IDE (for example, the Customization Context window), while some other features are disabled (for example, you cannot create new customizable objects and you cannot edit non-customizable objects). [ tell me more...]
In the example, you have customized the Browse page by adding a databound Table component to display data from the OrderItemsView view object. [ tell me more...]
In the example, you have customized the model view object OrderItemsView by adding the ProductName attribute from the ProductsBase entity object. [ tell me more...]
site/headquarters customization context.)
When you complete the steps for customizing the Browse and More pages in the site/remoteoffices context, the pages in the visual editor should look similar to these: [ tell me more...]
When an application with customized metadata is run, the applicable customizations that belong to the active layer values in customization.properties are loaded from the corresponding repository and layered over the base metadata of the application to produce the desired customized contents for viewing. You do not have to switch back the Default role before you run the application. [ tell me more...]
If you have been following along with the example, your customization.properties file should contain the following layer values: [ tell me more...]
/Model/src folder of your application folder (for example, C:/JDeveloper/mywork/CustomizeApp/Model/src). In the text editor, add # in front of site=headquarters. Then remove # from site=remoteoffices. Save the file.
When you run the application with the site=headquarters layer value active, the Browse page in your browser should look similar to this: [ tell me more...]
User customizations in an application allow end users to make changes to certain UI components at runtime to suit individual preferences (for example, which columns are visible in a table), and have those changes "remembered" during the user's session or every time the user opens the application. [ tell me more...]
User customizations or change persistence allow end users to make changes to certain UI components at runtime to suit individual preferences (for example, the user can decide which columns are visible in a table). There are two types of user customizations: [ tell me more...]
Many ADF Faces components allow users to change the display of the component at runtime. For example, a user can change the position of the splitter in the Panel Splitter component or change whether or not a Show Detail or Show Detail Header component displays the children contents. By default, these changes live only as long as the page request. If the user leaves the page and then returns, the component displays in the manner it is configured by default. [ tell me more...]
In the Application Navigator, ViewController project, Web Content | WEB-INF folder, double-click web.xml to open the file in the overview editor. On the Application page, expand the Context Initialization Parameters subsection. You should see that the value of CHANGE_PERSISTENCE is set to session. [ tell me more...]
User customizations in an application allow end users to make changes to certain UI components at runtime to suit individual preferences (for example, which columns are visible in a table), and have those changes "remembered" during the user's session or every time the user opens the application. [ tell me more...]
User customizations or change persistence allow end users to make changes to certain UI components at runtime to suit individual preferences (for example, which columns are visible in a table). There are two types of user customizations: [ tell me more...]
usercc and select the class UserCC (oracle.adf.share.config). Click OK.
The View page, Tag Configuration section of the adf-config.xml overview editor lets you declare the components and associated attribute values that you want to be persisted in the repository without writing any code. [ tell me more...]
When you complete the steps to configure the components and attribute values that you want to be persisted in the MDS repository, the View page in the adf-config.xml overview editor should look similar to this: [ tell me more...]
The Oracle ADF Security framework, which is is built on top of the Oracle Platform Security Services (OPSS) architecture, is the preferred technology to provide authentication and authorization services to a Fusion web application. ADF Security implements a Java Authentication and Authorization Service (JAAS) security model. The JAAS model is policy-based since JAAS is built on the existing Java security model and integrates with any JAAS implementation. When you enable ADF Security on a Fusion web application, the application requires an explicit call to the ADF Security framework to authorize access to resources based on user-defined policies. [ tell me more...]
Oracle ADF Security delegates authentication to the web container. The most commonly used types of authentication methods are HTTP Basic Authentication and Form-Based Authentication. Basic authentication uses the browser login dialog for the user to enter a user name and password. Note that with basic authentication, the browser caches credentials from the user, thus preventing logout. Basic authentication is useful when you want to test the application without requiring a custom login page. [ tell me more...]
BasicUserRole and press Tab.
In the rest of the steps in this cue card, you will use the jazn-data.xml overview editor to secure the view operation on ADF resources with Java Authentication and Authorization Service (JAAS). [ tell me more...]
user1 and press Tab. Enter welcome1 in the Password field, then press Tab.
A realm is a collection of authenticated users and roles. The default realm in Oracle ADF Security is jazn.com, which is defined in jazn-data.xml. A user is an authorized end user accessing a service; it could be an individual or a software component. [ tell me more...]
When you complete the steps for configuring ADF Security and creating a user, the ADF Policies page of the jazn-data.xml overview editor should look similar to this: [ tell me more...]
If you have been following along with the example so far, you have enabled user customizations across sessions and seeded customizations in the application, both of which use the MDS repository. So when you run the application, you will see the seeded customizations you made, based on the active customization layer value previously set in customization.properties. [ tell me more...]
user1 and welcome1, respectively. Then click OK.
When you make a persistent component attribute change on the Browse or More page, JDeveloper creates an XML metadata change persistence file using the page's file name, and stores the XML file in a subfolder in the mdssys/cust/user folder. For example, the XML change persistence file created for the Browse page is Browse.jspx.xml. [ tell me more...]
If you open a metadata change persistence file, you should see the elements JDeveloper created when you personalized the page at runtime. For example, if you open Browse.jspx.xml, you should see code similar to the following: [ tell me more...]
Copyright © 1997, 2009, Oracle. All rights reserved.