1/13
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
What's New in This Guide for Release 11.1.2.2.0
1
Introduction to Building Java EE Web Applications with Oracle ADF
1.1
Introduction to Oracle ADF
1.2
Developing with Oracle ADF
1.2.1
Core Development Steps
1.2.2
Supplemental Development Tasks
1.3
Introduction to the Summit Demo Application
1.3.1
How to Download the Application Resources
1.3.2
How to Install and Run the Summit Demo Application
1.3.3
Taking a Look at the Summit Demo Application Code
2
Using ADF Model Data Binding in a Java EE Web Application
2.1
Introduction to ADF Model Data Binding
2.2
Exposing Business Services with ADF Data Controls
2.2.1
How to Create ADF Data Controls
2.2.2
What Happens in Your Project When You Create a Data Control
2.2.2.1
DataControls.dcx Overview Editor
2.2.2.2
Data Controls Panel
2.3
Using the Data Controls Panel
2.3.1
How to Use the Data Controls Panel
2.3.2
What Happens When You Use the Data Controls Panel to Create UI Components
2.3.3
What Happens at Runtime
2.3.4
What You May Need to Know About Iterator Result Caching
2.3.5
What You May Need to Know About Configuring Validation
2.3.6
What You May Need to Know About Custom Session Bean Accessor Methods
3
Adding Business Logic to Data Controls
3.1
Introduction to Adding Business Logic to Data Controls
3.2
Configuring Data Controls
3.2.1
How to Edit a Data Control
3.2.2
What Happens When You Edit a Data Control
3.3
Working with Attributes
3.3.1
How to Control the Updatability of an Attribute
3.3.2
How to Define a Static Default Value for an Attribute
3.3.3
How to Define a Default Value Using a Groovy Expression
3.3.4
What Happens When You Create a Default Value Using a Groovy Expression
3.3.5
How to Set UI Hints on Attributes
3.3.6
What Happens When You Set UI Hints on Attributes
3.4
Adding Transient Attributes to a Bean
3.4.1
How to Add a Transient Attribute
3.4.2
What Happens When You Add a Transient Attribute
3.5
Defining Validation Rules on Attributes Declaratively
3.5.1
How to Add Validation Rules to Attributes
3.5.2
What Happens When You Add a Validation Rule
3.5.3
How to Use the Built-in Declarative Validation Rules
3.5.3.1
Validating Based on a Comparison
3.5.3.2
What Happens When You Validate Based on a Comparison
3.5.3.3
Validating Using a List of Values
3.5.3.4
What Happens When You Validate Using a List of Values
3.5.3.5
Ensuring That a Value Falls Within a Certain Range
3.5.3.6
What Happens When You Use a Range Validator
3.5.3.7
Validating Against a Number of Bytes or Characters
3.5.3.8
What Happens When You Validate Against a Number of Bytes or Characters
3.5.3.9
Validating Using a Regular Expression
3.5.3.10
What Happens When You Validate Using a Regular Expression
3.5.4
How to Use Groovy Expressions For Validation and Business Rules
3.5.4.1
Referencing Bean Methods in Groovy Validation Expressions
3.5.4.2
Validating Using a True/False Expression
3.5.4.3
What Happens When You Add a True/False Expression
3.5.5
How to Create Validation Error Messages
3.5.5.1
Creating Validation Error Messages
3.5.5.2
Localizing Validation Messages
3.5.5.3
Raising Error Message Conditionally Using Groovy
3.5.5.4
Embedding a Groovy Expression in an Error Message
3.5.6
How to Set the Severity Level for Validation Exceptions
3.6
Filtering Result Sets with Named Criteria
3.6.1
Use Case for Named Criteria
3.6.2
How to Create Named Criteria Declaratively
3.6.3
What Happens When You Create a Named Criteria
3.6.4
How to Use Bind Variables in Named Criteria
3.6.5
What Happens When You Use Bind Variables in Named Criteria
3.6.6
What You May Need to Know About Nested Expressions
3.6.7
How to Set User Interface Hints on Named Criteria
3.7
Testing Bean Metadata Using the Oracle ADF Model Tester
3.7.1
How to Run the Oracle ADF Model Tester
3.7.2
How to Update the Oracle ADF Model Tester to Display Project Changes
3.7.3
What Happens When You Use the Oracle ADF Model Tester
3.7.4
How to Test Business Layer Validation
3.7.5
How to Test Alternate Language Message Bundles and UI Hints
3.7.6
How to Test Row Creation and Default Value Generation
3.7.7
How to Test Named Criteria Using the Oracle ADF Model Tester
3.8
Groovy Language Support
3.8.1
How to Reference ADF Objects in Groovy Expressions
3.8.2
How to Reference ADF Methods and Attributes in Groovy Expressions
4
Creating a Basic Databound Page
4.1
About Creating a Basic Databound Page
4.2
Using Attributes to Create Text Fields
4.2.1
How to Create a Text Field
4.2.2
What Happens When You Create a Text Field
4.2.2.1
Creating and Using Iterator Bindings
4.2.2.2
Creating and Using Value Bindings
4.2.2.3
Using EL Expressions to Bind UI Components
4.3
Creating a Basic Form
4.3.1
How to Create a Form
4.3.2
What Happens When You Create a Form
4.4
Incorporating Range Navigation into Forms
4.4.1
How to Insert Navigation Controls into a Form
4.4.2
What Happens When You Create Command Buttons
4.4.2.1
Action Bindings for Built-in Navigation Operations
4.4.2.2
Iterator RangeSize Attribute
4.4.2.3
EL Expressions Used to Bind to Navigation Operations
4.5
Creating a Form Using a Method That Takes Parameters
4.5.1
How to Create a Form or Table Using a Method That Takes Parameters
4.5.2
What Happens When You Create a Form Using a Method That Takes Parameters
4.5.3
What Happens at Runtime: Setting Parameters for a Method
4.5.4
What You May Need to Know About Setting Parameters with Methods
4.5.5
What You May Need to Know About Using Contextual Events Instead of Parameters
4.6
Creating a Form to Edit an Existing Record
4.6.1
How to Create Edit Forms
4.6.2
What Happens When You Use Methods to Change Data
4.6.2.1
Method Bindings
4.6.2.2
Using EL Expressions to Bind to Methods
4.6.3
What You May Need to Know About the Difference Between the Merge and Persist Methods
4.6.4
What You May Need to Know About Overriding Declarative Methods
4.7
Creating an Input Form
4.7.1
How to Create an Input Form Using a Task Flow
4.7.2
What Happens When You Create an Input Form Using a Task Flow
4.7.3
What Happens at Runtime: Invoking the Create Action Binding from the Method Activity
4.8
Modifying the UI Components and Bindings on a Form
5
Creating ADF Databound Tables
5.1
About Adding Tables
5.2
Creating a Basic Table
5.2.1
How to Create a Basic Table
5.2.2
What Happens When You Create a Table
5.2.2.1
Iterator and Value Bindings for Tables
5.2.2.2
Code on the JSF Page for an ADF Faces Table
5.2.3
What You May Need to Know About Setting the Current Row in a Table
5.3
Creating an Editable Table
5.3.1
How to Create an Editable Table
5.3.2
What Happens When You Create an Editable Table
5.4
Creating an Input Table
5.4.1
How to Create an Input Table
5.4.2
What Happens When You Create an Input Table
5.4.3
What Happens at Runtime: How Create and Partial Page Refresh Work
5.4.4
What You May Need to Know About Creating a Row and Sorting Columns
5.5
Modifying the Attributes Displayed in the Table
6
Displaying Master-Detail Data
6.1
Introduction to Displaying Master-Detail Data
6.2
Identifying Master-Detail Objects on the Data Controls Panel
6.3
Using Tables and Forms to Display Master-Detail Objects
6.3.1
How to Display Master-Detail Objects in Tables and Forms
6.3.2
What Happens When You Create Master-Detail Tables and Forms
6.3.2.1
Code Generated in the JSF Page
6.3.2.2
Binding Objects Defined in the Page Definition File
6.3.3
What Happens at Runtime: ADF Iterator for Master-Detail Tables and Forms
6.3.4
What You May Need to Know About Displaying Master-Detail Widgets on Separate Pages
6.4
Using Trees to Display Master-Detail Objects
6.4.1
How to Display Master-Detail Objects in Trees
6.4.2
What Happens When You Create an ADF Databound Tree
6.4.2.1
Code Generated in the JSF Page
6.4.2.2
Binding Objects Defined in the Page Definition File
6.4.3
What Happens at Runtime: Displaying an ADF Databound Tree
6.5
Using Tree Tables to Display Master-Detail Objects
6.5.1
How to Display Master-Detail Objects in Tree Tables
6.5.2
What Happens When You Create a Databound Tree Table
6.5.2.1
Code Generated in the JSF Page
6.5.2.2
Binding Objects Defined in the Page Definition File
6.5.3
What Happens at Runtime: Events
6.5.4
Using the TargetIterator Property
6.6
Using Selection Events with Trees and Tables
6.6.1
How to Use Selection Events with Trees and Tables
6.6.2
What Happens at Runtime: RowKeySet Objects and SelectionEvent Events
7
Creating Databound Selection Lists
7.1
Introduction to Selection Lists
7.2
Creating a Single Selection List
7.2.1
How to Create a Single Selection List Containing Fixed Values
7.2.2
How to Create a Single Selection List Containing Dynamically Generated Values
7.2.3
What Happens When You Create a Fixed Selection List
7.2.4
What Happens When You Create a Dynamic Selection List
7.3
Creating a List with Navigation List Binding
8
Creating Databound Search Forms
8.1
Introduction to Creating Search Forms
8.1.1
Query Search Forms
8.1.2
Quick Query Search Forms
8.1.3
Filtered Table and Query-by-Example Searches
8.2
Creating Query Search Forms
8.2.1
How to Create a Query Search Form with a Results Table or Tree Table
8.2.2
How to Create a Query Search Form and Add a Results Component Later
8.2.3
How to Persist Saved Searches into MDS
8.2.4
What Happens When You Create a Query Form
8.2.5
What Happens at Runtime: Search Forms
8.3
Setting Up Search Form Properties
8.3.1
How to Set Search Form Properties on the Query Component
8.4
Creating Quick Query Search Forms
8.4.1
How to Create a Quick Query Search Form with a Results Table or Tree Table
8.4.2
How to Create a Quick Query Search Form and Add a Results Component Later
8.4.3
How to Set the Quick Query Layout Format
8.4.4
What Happens When You Create a Quick Query Search Form
8.4.5
What Happens at Runtime: Quick Query
8.5
Creating Standalone Filtered Search Tables
9
Deploying an ADF Java EE Application
9.1
Introduction to Deploying ADF Java EE Web Applications
9.1.1
Developing Applications with Integrated WebLogic Server
9.1.2
Developing Applications for Standalone Application Server
9.2
Running a Java EE Application in Integrated WebLogic Server
9.2.1
How to Run an Application in Integrated WebLogic Server
9.2.2
How to Run an Application with Metadata in Integrated WebLogic Server
9.3
Preparing the Application
9.3.1
How to Create a Connection to the Target Application Server
9.3.2
How to Create Deployment Profiles
9.3.2.1
Creating a WAR Deployment Profile
9.3.2.2
Creating a MAR Deployment Profile
9.3.2.3
Creating an EJB JAR Deployment Profile
9.3.2.4
Creating an Application-Level EAR Deployment Profile
9.3.2.5
Delivering Customization Classes as a Shared Library
9.3.2.6
Viewing and Changing Deployment Profile Properties
9.3.2.7
Adding Customization Classes into a JAR
9.3.3
How to Create and Edit Deployment Descriptors
9.3.3.1
Creating Deployment Descriptors
9.3.3.2
Viewing or Modifying Deployment Descriptor Properties
9.3.3.3
Configuring the application.xml File for WebLogic Compatibility
9.3.3.4
Configuring the web.xml File for WebLogic Compatibility
9.3.3.5
Enabling the Application for Real User Experience Insight
9.3.4
How to Deploy Applications with ADF Security Enabled
9.3.4.1
Applications That Will Run Using Oracle Single Sign-On (SSO)
9.3.4.2
Configuring Security for WebLogic Server
9.3.4.3
Configuring Security for WebSphere Server
9.3.5
How to Replicate Memory Scopes in a Clustered Environment
9.3.6
How to Enable the Application for ADF MBeans
9.3.7
What You May Need to Know About JDBC Data Source for Oracle WebLogic Server
9.4
Deploying the Application
9.4.1
How to Deploy to WebLogic Server from JDeveloper
9.4.2
How to Create an EAR File for Deployment
9.4.3
What You May Need to Know About ADF Libraries
9.4.4
How to Deploy New Customizations Applied to ADF LIbrary
9.4.4.1
Exporting Customization to a Deployed Application
9.4.4.2
Deploying Customizations to a JAR
9.4.5
What You May Need to Know About ADF Libraries
9.4.6
What You May Need to Know About EAR Files and Packaging
9.4.7
How to Deploy the Application Using Scripts and Ant
9.4.8
What You May Need to Know About JDeveloper Runtime Libraries
9.5
Postdeployment Configuration
9.5.1
How to Migrate an Application
9.5.2
How to Configure the Application Using ADF MBeans
9.5.3
How to Configure WebSphere for Result Sets Reuse
9.6
Testing the Application and Verifying Deployment
Scripting on this page enhances content navigation, but does not change the content in any way.