Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Oracle ADF Enterprise Application Development – Made Simple
PREMIUM
Số trang
432
Kích thước
10.6 MB
Định dạng
PDF
Lượt xem
1459

Oracle ADF Enterprise Application Development – Made Simple

Nội dung xem thử

Mô tả chi tiết

Oracle ADF

Enterprise Application

Development – Made Simple

Second Edition

Successfully plan, develop, test, and deploy enterprise

applications with Oracle ADF

Sten E. Vesterli

PUBLISHING

professional expertise distilled

BIRMINGHAM - MUMBAI

Oracle ADF Enterprise Application

Development – Made Simple

Second Edition

Copyright © 2014 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval

system, or transmitted in any form or by any means, without the prior written

permission of the publisher, except in the case of brief quotations embedded in

critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy

of the information presented. However, the information contained in this book is

sold without warranty, either express or implied. Neither the author, nor Packt

Publishing, and its dealers and distributors will be held liable for any damages

caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the

companies and products mentioned in this book by the appropriate use of capitals.

However, Packt Publishing cannot guarantee the accuracy of this information.

First published: June 2011

Second Edition: February 2014

Production Reference: 1120214

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78217-680-0

www.packtpub.com

Cover Image by Artie ([email protected])

Credits

Author

Sten E. Vesterli

Reviewers

Maroof Ahmad

Vinod Krishnan

Sanjeeb Mahakul

Frank Nimphius

Dimitrios Stasinopoulos

Acquisition Editors

Dhwani Devater

Rashmi Phadnis

Rubal Kaur

Content Development Editor

Arvind Koul

Technical Editors

Manan Badani

Shashank Desai

Shali Sasidharan

Copy Editors

Sarang Chari

Karuna Narayanan

Project Coordinator

Kranti Berde

Proofreaders

Lauren Harkins

Amy Johnson

Indexer

Rekha Nair

Graphics

Yuvraj Mannari

Abhinash Sahu

Production Coordinator

Arvindkumar Gupta

Cover Work

Arvindkumar Gupta

About the Author

Sten E. Vesterli picked up Oracle development as his first job after graduating

from the Technical University of Denmark and hasn't looked back since. He has

worked with almost every development tool and server Oracle has produced in the

last two decades, including Oracle ADF, JDeveloper, WebLogic, SQL Developer,

Oracle Portal, BPEL, Collaboration Suite, Designer, Forms, Reports, and even Oracle

Power Objects.

He started sharing his knowledge with a conference presentation in 1997 and has

given more than 100 conference presentations at Oracle OpenWorld and at ODTUG,

IOUG, UKOUG, DOAG, DOUG, and other user group conferences around the world

since. His presentations are highly rated by the participants, and in 2010 he received

the ODTUG Best Speaker award.

He has also written numerous articles, participated in podcasts, and written Oracle

Web Applications 101, Oracle ADF Enterprise Application Development – Made Simple,

and Developing Web Applications with Oracle ADF Essentials. You can find his blog at

www.vesterli.com and follow him on Twitter as @stenvesterli.

Oracle has recognized Sten's skills as an expert communicator on Oracle technology

by awarding him the prestigious title, Oracle ACE Director, carried by less than

100 people in the world. He is also an Oracle Fusion User Experience Advocate and

sits on the Oracle Usability Advisory Board and participates in the Oracle WebLogic

Partner Council.

Based in Denmark, Sten is a partner in the Oracle consulting company

Scott/Tiger, where he works as a senior principal consultant. When not writing

books or presenting, he is helping customers choose the appropriate technology

for their needs, teaching, mentoring, and leading development projects. In his

spare time, Sten enjoys triathlon and completed his first Ironman in 2012.

Acknowledgment

First and foremost, I'd like to thank the members of the ADF Enterprise Methodology

Group (ADF EMG). This group meets online, and occasionally in person, to discuss

ADF architecture, methodology, and best practice. The discussions I've had in this

group have widened my perspective and challenged me to formulate my own

methodology clearly. I'd like to extend a special thanks to the group moderator,

John Flack, who works tirelessly to keep the signal-to-noise ratio on the discussion

forum extremely high. If you are a software developer working with ADF and

you are serious about your software craftsmanship, you need to join this group:

https://sites.google.com/site/oracleemg/adf.

Many people at Oracle have also been contributing with clarifications, comments,

and insights that have made this book better. I especially appreciate the efforts of

ADF EMG founder Chris Muir, now at Oracle, for responding to my many queries

on ADF and JDeveloper 12c on the ADF EMG Jira issue tracker.

I would also like to thank the people at Packt Publishing who have been working on

this project as well as my reviewers who have improved the book with their excellent

questions and suggestions.

Finally, I'd like to thank my wonderful wife for her love and support and for accepting

yet another batch of weekends marked with "Book deadline" in our calendar.

About the Reviewers

Maroof Ahmad is an Engineering Graduate (B.Tech) from Integral University,

Lucknow. He has majored in Computer Science and Engineering. He has

worked on multiple projects with a very large team, where he found freshers

who were learning ADF. He also writes a blog on Oracle Fusion Middleware Lab

(http://www.ofmlab.blogspot.com/) for providing real challenging solutions

and building ADF applications using ADF components and advantages. For more

updated details about Maroof, please visit http://maroofgm.blogspot.com/.

He has a rich work experience in ADF and middleware technologies, and he is

currently working with Bader Al Mulla and Brothers Company W.L.L. in Kuwait

as an Oracle Middleware consultant. He has also worked in CMC Limited (A TATA

Enterprise) and HMK INDIA Technologies as a software engineer.

First, I want to thank my Mommy for her encouragement and

compromise. After that, it's only possible because of Priyanka; she

always stood by me, offering moral and positive support during

the time of the review, so a big thanks to Priyanka. I also want to

mention a key person and colleague, Ahmad Salman; he always

provided comfort when I was working late, leaving the office early,

and much more. So, thank you Ahmad Salman for this wonderful

journey. I would also like to mention Mohammed Jabarullah and

Joby Josheph, who have always supported me in every situation.

Vinod Krishnan has over nine years of experience in the Information Technology

industry. This exposed him to a wide range of technologies that include Java, J2EE,

WebLogic, Fusion Middleware, SOA, and WebCenter. He has been working with

Oracle ADF Technologies since 2005 and enhanced his affinity towards ADF after

he joined Oracle India. For the last five years, he has been actively involved in

large implementations of next-generation enterprise applications utilizing Oracle's

JDeveloper and Application Development Framework (ADF) technologies. He

holds a B.Tech. degree in Information Technology from Anna University, Chennai,

India. He is currently responsible for building and deploying applications using the

Oracle Fusion Middleware technology stack as a project lead in Oracle America.

He is an Oracle-certified specialist, and the technologies he has worked on include

Oracle ADF, SOA, WebCenter, and Identity Management. His contribution towards

JDeveloper and ADF discussion forums is immense. With his experience, he has

learned many tips and techniques that will help a new user to learn this technology

without any hassles. He writes his own blog (http://vtkrishn.com) that discusses

the tips and tricks with using Oracle technologies. He has had a multifaceted career;

he has worked in positions such as senior consultant, senior applications engineer,

software engineer, and solution architect for MNCs such as Oracle, Capgemini, and

Keane. He is the author of the book Oracle ADF 11gR2 Development Beginner's Guide—

ISBN 978-1-84968-900-7.

Sanjeeb Mahakul is a technical architect who has dedicated his career to

specializing in Oracle Fusion products. With over eight years of experience in Oracle

Fusion products, such as Oracle ADF, WebCenter Portal, WebCenter Spaces, and

WebCenter Content, he has seen the evolution in enterprise application and portals.

He leads enterprise architecture and integration and delivers industry-applied

solutions for various customers. He is also an Oracle-certified ADF implementation

specialist. He is passionate about researching and learning upcoming technologies,

architecture, and the industry's best practices. He is also dedicated to helping out

and posting in the OTN community and various forums.

I would like to thank all my family and friends who supported me

with time and every other way. I would especially like to thank one

of my best friends, Mona, who was a constant source of inspiration

and a driving force for reviewing this book.

Frank Nimphius is a senior principal product manager in the Oracle Application

Development Tools group at Oracle Corporation, specializing in Oracle JDeveloper

and the Oracle Application Development Framework (ADF) as well as in mobile

application development. Frank runs the ADF Code Corner website, the OTN

Forum Harvest blog, and is the co-author of the Oracle Fusion Developer Guide book

published in 2009 by McGraw Hill and the ADF Architecture Square website.

Dimitrios Stasinopoulos is a certified Application Development Framework

implementation specialist with more than seven years of experience in Oracle Fusion

Middleware and, more specifically, in ADF BC 11g. He currently works as an Oracle

Fusion Middleware consultant, mainly focusing on Oracle ADF. He has worked in

several Oracle ADF projects in various positions, from developer to architect, and

enjoys teaching and talking about Fusion Middleware.

In his spare time, he helps the ADF community by answering technical questions

in the Oracle ADF and JDeveloper forums and maintains a blog, where he posts his

findings and ideas: dstas.blogspot.com.

He holds a B.Sc degree in Computer Science from the Technological Educational

Institution of Larissa, Greece.

www.PacktPub.com

Support files, eBooks, discount offers, and more

You might want to visit www.PacktPub.com for support files and downloads related to

your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub

files available? You can upgrade to the eBook version at www.PacktPub.com and as a print

book customer, you are entitled to a discount on the eBook copy. Get in touch with us at

[email protected] for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a

range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

TM

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book

library. Here, you can access, read and search across Packt's entire library of books.

Why subscribe?

• Fully searchable across every book published by Packt

• Copy and paste, print and bookmark content

• On demand and accessible via web browser

Free Access for Packt account holders

If you have an account with Packt at www.PacktPub.com, you can use this to access

PacktLib today and view nine entirely free books. Simply use your login credentials for

immediate access.

Instant updates on new Packt books

Get notified! Find out when new books are published by following @PacktEnterprise on

Twitter, or the Packt Enterprise Facebook page.

Table of Contents

Preface 1

Chapter 1: The ADF Proof of Concept 11

Understanding the architecture of ADF 12

Enterprise architecture 12

The frontend part 12

The backend part 13

The ADF architecture 13

Entity objects and associations 15

View objects and view links 15

Application modules 16

The ADF user interface 17

ADF Task Flows 18

ADF pages and fragments 18

The Proof of Concept 19

Content of a Proof of Concept 19

Making the technology work 20

Determining the development speed 21

The Proof of Concept deliverables 22

The Proof of Concept case study 23

Use cases 24

UC008 Task Overview and Edit 24

UC104 Person Task Timeline 25

Data model 25

Getting started with JDeveloper 27

The JDeveloper window and panels 29

Setting JDeveloper preferences 29

The Proof of Concept ADF Business Components 31

Creating a connection 31

Entity objects for the Proof of Concept 33

Building associations for the Proof of Concept 35

Table of Contents

[ ii ]

Building view objects and view links for the Proof of Concept 36

Creating view objects for value lists 36

Creating a view object for tasks 38

Building an application module for tasks 41

Creating view objects for scheduling 43

Building an application module for scheduling 45

The Proof of Concept ADF user interface 47

ADF Task Flows 48

The tasks page 49

Creating the tasks page 49

Running the initial tasks page 54

Refining the tasks page 54

Fixing the bindings 59

Running the tasks page with parameters 60

Adding database operations 61

Running the tasks page with database operations 63

The scheduled tasks page 63

Adding the Gantt component 64

Navigation 65

Summary 67

Chapter 2: Estimating the Effort 69

Gathering requirements 69

Building it just like the old system 70

Use cases 70

User stories 73

Non-functional requirements 73

Requirement lists 74

Screen design 74

Deciding how to build it 76

Deciding how much to build at a time 76

Deciding how much to build yourself 77

Deciding how to integrate 77

Application architecture 78

Example Work Breakdown Structure 80

Estimating the solution 83

Top-down estimate 83

Bottom-up estimate 83

Three-point estimates 84

Grouping – simple, normal, and hard 85

More input, better estimates 86

Adding it all up – the final estimate 88

Swings and roundabouts 88

Table of Contents

[ iii

]

Calculating the standard deviation for a task 89

Calculating the standard deviation for a project 89

Sanity check 90

From effort to calendar time 91

Summary 91

Chapter 3: Getting Organized 93

Skills required for an ADF project 93

ADF framework knowledge 94

Object-oriented programming 95

Java programming 95

Database design and programming 96

XML knowledge 96

Web technologies 97

Regular expressions 97

Graphics design 98

Usability 99

Testing 99

Organizing the team 99

Project manager 100

Software architect and lead programmer 100

Regular programmers 101

Building Business Components 102

Building the user interface 102

Skinning 103

Templates 103

Defining data validation 104

Building support classes 104

Building database stored procedures 105

Build/configuration manager 105

Database and application server administrator 106

Graphic designers 107

Usability experts 107

Quality assurance, test manager, and tester 108

Data modelers 108

Users 109

Gathering the tools 109

Source control 110

Bug/issue tracking 111

Collaboration 112

Shared documents 112

Discussion forums 113

Online chat 113

Table of Contents

[ iv

]

Test and requirement management 114

Automated build system 114

Structuring workspaces, projects, and code 115

Using projects 115

Simple architecture 115

Modular architecture 116

Application Common Workspace 117

Database workspace 119

Subsystem workspaces 119

Master workspace 119

Enterprise architecture 120

Enterprise Common Workspace 120

Master application workspaces 120

Naming conventions 121

General 121

Java packages 121

Project code 121

Enterprise Common Code 122

Database objects 123

ADF elements 124

File locations 125

Test code 126

Summary 127

Chapter 4: Productive Teamwork 129

The secret of productivity 129

More pixels give better productivity 129

Version control 130

Avoiding spreadsheets 130

Split your project into tasks 130

Focus 130

Integrate your tools 131

Version control with Subversion 131

Effective Subversion 132

Handling new files 133

Starting with Subversion 134

Working with Subversion 135

Getting a new copy 136

Getting other people's changes 137

Automatic merge 137

Handling conflicts 138

Version control with Git 140

Effective Git 140

Staging and committing 141

Tải ngay đi em, còn do dự, trời tối mất!