Author(s): Duncan Mills, Peter Koletzke, Avrom Roy-Faderman
Series: Osborne ORACLE Press Series
Edition: 1
Publisher: McGraw-Hill Osborne Media
Year: 2009
Language: English
Pages: 913
Contents......Page 10
Foreword......Page 22
Acknowledgments......Page 24
Introduction......Page 30
Part I: Overviews......Page 46
1 Overview of Fusion Development and ADF......Page 48
What Is Fusion?......Page 49
What Is a Framework?......Page 62
What Is Oracle ADF?......Page 67
Why Should I Use JDeveloper?......Page 74
2 Introduction to the JDeveloper Integrated Development Environment......Page 78
What Are the Important Features of the JDeveloper IDE?......Page 80
How Can I Best Use the Help Center?......Page 100
How Does Source Code Version Control Work in JDeveloper?......Page 101
3 JDeveloper Tools......Page 106
Application Navigator......Page 107
Resource Palette......Page 112
New Gallery......Page 113
Application Overview Window......Page 117
Structure Window......Page 119
Component Palette......Page 122
Property Inspector......Page 123
Log Window......Page 125
Code Editor......Page 126
Debugger......Page 135
JSP/HTML Visual Editor......Page 139
Modelers and Diagrammers......Page 140
Database Navigator......Page 145
4 Technology Background......Page 150
What Is Java Platform, Enterprise Edition?......Page 151
What Are the Main Styles of Java EE Code?......Page 156
How Do Web Communications Work?......Page 163
What Languages Do I Need to Know for Web Development?......Page 173
Part II: ADF Business Components......Page 190
5 Introducing ADF Business Components......Page 192
Why Use ADF BC?......Page 193
How Do Business Components Use Java and XML?......Page 196
What Are the Major Business Components?......Page 197
Which Components Support the Major Business Components?......Page 209
How Can I Visualize My Business Components?......Page 211
6 Specifying a Business Domain......Page 214
What Are Entity Object Definitions and Entity Object Instances?......Page 215
What Is an Association?......Page 221
How Do Entity Attributes Work?......Page 227
How Do You Create and Edit Entity Object Definitions and Associations?......Page 231
How Do You Implement Attribute-Level Validation?......Page 235
How Do You Implement Entity-Level Validation?......Page 251
How Does the ADF BC Validation Cycle Work?......Page 257
How Do You Implement Attribute Defaulting and Calculation?......Page 260
How Do You Synchronize with Database Defaulting and Calculation?......Page 265
How Do You Implement Polymorphic Business Rules?......Page 273
7 Assembling a Data Model......Page 278
What Are View Object Definitions, View Object Instances, and View Rows?......Page 279
How Do View Attributes Work?......Page 283
How Do You Create and Edit View Object Definitions?......Page 291
How Do You Specify View Object Queries?......Page 294
How Can View Object Instances Handle Row Creation, Row Deletion, and Association Changes?......Page 306
What Are View Link Definitions and View Link Instances?......Page 308
How Do You Create and Edit View Link Definitions?......Page 312
What Are Application Module Definitions and Application Module Instances?......Page 313
How Do You Create and Edit Application Module Definitions?......Page 316
How Do You Use View Object Instances as LOVs?......Page 322
How Do Application Module Instances Manage Transactional State?......Page 327
8 Providing Custom Data Services......Page 330
What Sort of Method Can Be a Service Method?......Page 332
How Do You Expose Methods as Service Methods?......Page 333
How Do You Implement Single-Row Methods?......Page 335
How Do You Implement Query-Level Methods?......Page 337
How Do You Implement Cross-Query or Transaction-Level Methods?......Page 344
Part III: ADF View and Controller......Page 352
9 JavaServer Faces Basics......Page 354
Why Was JSF Developed?......Page 356
What JSF Concepts Do I Really Need to Know Now?......Page 357
Where Can I Find Additional Information about JSF?......Page 370
10 Your First JSF......Page 372
Hands-on Practice: Create a JSF Login and JSF Home Page......Page 373
Centralize the Messages......Page 410
Hands-on Practice: Access a Message Bundle with EL......Page 411
Hands-on Practice: Access a Message Bundle with Java......Page 413
11 The ADF Controller and Task Flows......Page 416
What Is the ADF Controller and Why Is It Needed?......Page 417
Types of Task Flows......Page 434
Advanced Task Flows......Page 447
12 ADF Faces Rich Client......Page 458
What Is ADF Faces and Where Did It Come From?......Page 459
How Does Partial Page Rendering Work?......Page 462
How Can I Achieve the Perfect Layout?......Page 466
What Types of Atomic Components Are Available?......Page 478
How Can I Change the Default ADF Faces Appearance?......Page 491
How Will I Ever Learn about All These Components?......Page 496
Part IV: ADF Model......Page 498
13 ADF Model Basics......Page 500
What Is the ADF Model Layer?......Page 501
How Do You Provide Default or Dynamic Visual Properties for UI Controls?......Page 503
How Do You Create Data-Bound Pages?......Page 509
How Do You Create Data-Bound Activities?......Page 530
What Files Are Involved in Data Binding?......Page 531
14 ADF Advanced Bindings......Page 534
How Can I Edit Data Bindings?......Page 536
What Binding Types Are Available?......Page 539
15 ADF Bindings: Iterators, Executables, and Code......Page 582
What Is an Iterator?......Page 583
What Are Executables?......Page 586
How Can I Control Execution in the ADF Model?......Page 591
How Can I Override and Add to the ADF Model Life Cycle?......Page 593
What Are Parameters?......Page 599
What Are Contextual Events?......Page 600
How Can I Write Code Using the ADF Model?......Page 604
Part V: Developing the Sample Application......Page 610
16 Application Design Principles and Sample Application Overview......Page 612
What Is the Design Process for a Fusion Application?......Page 614
What Best Practice Should Be Adopted?......Page 624
What Is the Design of the Sample Application?......Page 627
What Do I Have to Think about Before Starting?......Page 632
17 Sample Application: UI Patterns and Templates......Page 642
I. Prepare the Application Workspace......Page 644
II. Prepare the Database......Page 647
III. Set Up Project Defaults......Page 657
IV. Define a JSF Page Template......Page 660
18 Sample Application: Search Page......Page 672
I. Prepare Employee Search Business Components......Page 674
II. Create the Search Page......Page 680
III. Create the Employee Search Area......Page 682
IV. Create the Hierarchy Viewer Area......Page 693
19 Sample Application: Edit Page......Page 712
I. Set Up the Edit Page and Add LOVs......Page 714
II. Refine the Salary Field......Page 727
III. Refine the Commission Field......Page 733
IV. Refine the Image Field and the Layout......Page 742
V. Create a Popup for Job History......Page 748
VI. Apply Final Refinements......Page 758
20 Sample Application: The Image LOV Dialog......Page 768
I. Change How the Business Components Handle Image Usages......Page 772
II. Create the Popup Dialog......Page 778
III. Implement the Add Image Page......Page 789
IV. Implement the Set Default Image Page......Page 801
V. Integrate the Edit Page with the Rest of the Application......Page 811
21 Sample Application: Security......Page 818
I. Set Up Security for the Application......Page 820
II. Implement Authorization......Page 825
III. Implement Custom Login Functionality......Page 833
IV. Access Information about the Logged-In User......Page 839
22 Sample Application: Deployment......Page 844
Java Archive Files......Page 846
I. Set Up a Standalone WebLogic Server for Testing......Page 847
II. Configure Application-Specific Settings......Page 853
III. Deploy the Application......Page 858
A......Page 866
B......Page 872
C......Page 874
D......Page 877
E......Page 880
F......Page 883
H......Page 885
I......Page 886
J......Page 887
K......Page 889
L......Page 890
M......Page 891
N......Page 893
O......Page 894
P......Page 895
R......Page 897
S......Page 899
T......Page 902
U......Page 904
V......Page 905
W......Page 908
Z......Page 909