Architect Exam Guide. OCM EE 6 Enterprise. (Exams IZO-807,1ZO-865 & IZO-866) Oracle Press ORACLG. Paul R* Allen and Joseph J.

Similar documents
Java EE 7: Back-End Server Application Development

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand)

CO Java EE 7: Back-End Server Application Development

Deccansoft Software Services. J2EE Syllabus

CompTIA" Cloud Essentials Certification Study Guide. (Exam CLO-001) ITpreneurs

index_ qxd 7/18/02 11:48 AM Page 259 Index

Java- EE Web Application Development with Enterprise JavaBeans and Web Services

Oracle 10g: Build J2EE Applications

open source community experience distilled

J2EE - Version: 25. Developing Enterprise Applications with J2EE Enterprise Technologies

Web Application Development Using JEE, Enterprise JavaBeans and JPA

SCBCD EXAM STUDY KIT. Paul Sanghera CX JAVA BUSINESS COMPONENT DEVELOPER CERTIFICATION FOR EJB MANNING. Covers all you need to pass

Web Application Development Using JEE, Enterprise JavaBeans and JPA

1Z Oracle. Java Enterprise Edition 5 Enterprise Architect Certified Master

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

Business Component Development with EJB Technology, Java EE 5

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve

Java EE 6: Develop Business Components with JMS & EJBs

CMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition

Migrating traditional Java EE applications to mobile

Chapter 1 Introducing EJB 1. What is Java EE Introduction to EJB...5 Need of EJB...6 Types of Enterprise Beans...7

(9A05803) WEB SERVICES (ELECTIVE - III)

Developing Applications with Java EE 6 on WebLogic Server 12c

SUN Sun Certified Enterprise Architect for J2EE 5. Download Full Version :

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

JVA-163. Enterprise JavaBeans

Fast Track to EJB 3.0 and the JPA Using JBoss

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p.

Leverage Rational Application Developer v8 to develop Java EE6 application and test with WebSphere Application Server v8

Courses For Event Java Advanced Summer Training 2018

CO Java EE 6: Develop Web Services with JAX-WS & JAX-RS

Developing Java TM 2 Platform, Enterprise Edition (J2EE TM ) Compatible Applications Roles-based Training for Rapid Implementation

Java SE 8 Fundamentals

Java Programming Language

J2EE Interview Questions

Contents at a Glance

Application Servers in E-Commerce Applications

Outline. Project Goal. Overview of J2EE. J2EE Architecture. J2EE Container. San H. Aung 26 September, 2003

Oracle Fusion Middleware

J2EE Technologies. Industrial Training

JavaEE.Next(): Java EE 7, 8, and Beyond

EJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java

PeopleSoft PeopleTools Tips & Techniques

Introduction... xv SECTION 1: DEVELOPING DESKTOP APPLICATIONS USING JAVA Chapter 1: Getting Started with Java... 1

Chapter 6 Enterprise Java Beans

Java EE Patterns. Student Guide - Volume 1. SL-500 Rev C.0.1. D61856GC10 Edition 1.0 D62465

Building the Enterprise

Java EE 5 Development for WebSphere Application Server V7

Fast Track to Java EE

Software Design COSC 4353/6353 DR. RAJ SINGH

Spring Persistence. with Hibernate PAUL TEPPER FISHER BRIAN D. MURPHY

Enterprise JavaBeans, Version 3 (EJB3) Programming

CTS. Specialist. Certified Technology. Sven Laurik EXAM GUIDE. Mc Graw Hill. Chicago San Francisco Lisbon. New York. London Madrid Mexico City Milan

Appendix A - Glossary(of OO software term s)

OracleAS 10g R3: Build J2EE Applications II

QUALITY SUPPORT FROM THE SOURCE.

CERTIFICATION SUCCESS GUIDE ENTERPRISE ARCHITECT FOR JAVA 2 PLATFORM, ENTERPRISE EDITION (J2EE ) TECHNOLOGY

Overview p. 1 Server-side Component Architectures p. 3 The Need for a Server-Side Component Architecture p. 4 Server-Side Component Architecture

<Insert Picture Here> Java Virtual Developer Day

Oracle9iAS Tech nicaloverview

Java Enterprise Edition

Course title: ADVANCED WEB TECHNOLOGIES AND SERVICES

Java EE 6: Develop Web Applications with JSF

JVA-563. Developing RESTful Services in Java

<Insert Picture Here> Productive JavaEE 5.0 Development

Enterprise Java Security Fundamentals

WebSphere 4.0 General Introduction

Table of Contents. Introduction... xxi

Java EE Application Assembly & Deployment Packaging Applications, Java EE modules. Model View Controller (MVC)2 Architecture & Packaging EJB Module

The Java EE 6 Tutorial

Advanced Java Programming

Enterprise Java Unit 1-Chapter 2 Prof. Sujata Rizal Java EE 6 Architecture, Server and Containers

[Contents. Sharing. sqlplus. Storage 6. System Support Processes 15 Operating System Files 16. Synonyms. SQL*Developer

Oracle Developer Day

Sun Java System Application Server 8.1: Administration & Deployment

/ / JAVA TRAINING

1Z Java SE 5 and 6, Certified Associate Exam Summary Syllabus Questions

Introduction to componentbased software development

1 Markus Eisele, Insurance - Strategic IT-Architecture

Professional JSP : Using JavaServer Pages, Servlets, EJB, JNDI, JDBC, XML, XSLT, And WML By Karl Avedal, Danny Ayers

Deep Dive. Cloud Control 12c. Oracle Enterprise Manager ORACLG. Oracle Press. Michael New Edward Whalen Matthew Burke. London Madrid Mexico City Milan

Integrating Legacy Assets Using J2EE Web Services

Distributed Multitiered Application

Not just an App. Server

1Z

Designing a Distributed System

Borland Application Server Certification. Study Guide. Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved.

Market leading web application server product

1Z Oracle SOA Suite 12c Essentials Exam Summary Syllabus Questions

THIS IS ONLY SAMPLE RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. WE ARE NOT RESPONSIBLE Name: xxxxxx

Rational Application Developer 7 Bootcamp

Oracle Fusion Middleware

COURSE OUTLINE PRE-REQUISITES/CO-REQUISITES: COMP228, COMP214 COURSE ELIGIBILITY FOR PRIOR LEARNING ASSESSMENT AND RECOGNITION (PLAR):

ive JAVA EE C u r r i c u l u m

Oracle Corporation

Master Thesis An Introduction to the Enterprise JavaBeans technology and Integrated Development Environments for implementing EJB applications

ECLIPSE PERSISTENCE PLATFORM (ECLIPSELINK) FAQ

IBM WebSphere Application Server 8. Java EE 6 Feature Packs

Transcription:

ORACLG Oracle Press OCM Java@ EE 6 Enterprise Architect Exam Guide (Exams IZO-807,1ZO-865 & IZO-866) Paul R* Allen and Joseph J. Bambara McGraw-Hill Education is an independent entity from Oracle Corporation and is not affiliated with Oracle Corporation in any manner.this publication and CD-ROM may be used in assisting students to prepare for the OCM Java EE 6 Enterprise Architect exams. Neither Oracle Corporation nor McGraw-Hill Education warrants that use of this publication and CD-ROM will ensure passing the relevant exams. Mc Graw Hill Education New York Chicago San Francisco Athens London Madrid Mexico City Milan New Delhi Singapore Sydney Toronto

CONTENTS Acknowledgments Preface Introduction xvi xvii xxi I The Oracle Certified Master, Java EE 6 Enterprise Architect Exam and Certification I Widespread Capabilities for Application Development 3 Java Is the Glue That Binds the Application Development Process... 4 Companies Increasingly Need the Internet to Compete 6 Challenges of Application Development for the Enterprise 6 Increasing Programmer Productivity 7 JEE Architecture Must Respond The Architect Must Be Able to Integrate JEE and to Consumer Demand 8 Legacy Systems 8 The JEE Standard Promotes Competition and Choices 9 Design Goals ofjee Architecture 9 JEE Architects Should Strive for Service Availability 10 JEE Architecture and Connectivity to Existing Data 10 Expanded User Definition: Customers, Employees, and Partners 11 Flexible User Interaction 11 Flexible Business Component Model 12 The New Architect Role: Comprehensive Skill Set Required 12 Large-scale, Distributed Enterprise Systems and Integration Risk... 13 Quality of Service 13 Nonfunctional Requirements 13 Risk Evaluation and Control 14 Technology Responsibilities 14 Management Responsibilities 15 Difference between Architecture and Design 16 vii

Viii OCM Java EE 6 Enterprise Architect Exam Guide Architectural Principles 17 Registering for Oracle Certified Master, Java EE 6 Enterprise Architect Distinguishes the Java Professional 18 Objectives of the Exam 18 Starting Point 21 General OCMJEA Test Preparation Tips 25 Essay Test Preparation Tips 27 2 Application Design Concepts and Principles 31 Identify Nonfunctional and Quality of Service Requirements That Influence Application Design 33 Nonfunctional Requirements 33 Quality of Service and Architecture 34 Identify How the Separation of Concerns Principle Applies to the Component Model of a Java EE Application 41 Decomposition and the Separation of Concerns 41 Tiers 42 Identify the Correct Interpretation of Separation of Concerns as It Applies to the Java EE Service Layers 43 Layers 44 Identify the Effects of an Object-Oriented Approach to System Design 45 Fundamental Object-Oriented Concepts 45 Analysis and Design of Object-Oriented Architecture 49 Modeling and the Software Development Process 53 Exercise 2-1: Design Activities 58 Unified Modeling Language 59 UML Diagrams 60 UML Tools 61 Elements Used in UML 61 Relationships Used in UML 64 Diagrams Used in UML 64 Stereotypes 72 Practical Use ofuml Diagrams 72 / Two-Minute Drill 92 Q&A Self Test 97 Self Test Answers 103

Contents ix 3 Common Architectures 109 Identify the Appropriate Strategy for Deploying Client Applications to Desktop and Mobile Platforms, the Principles for Designing a User Interface, and the Benefits of Applying Client Tier Patterns 110 Client Tier Design Principles Identify Best Practices for Exception Handling, Logging, and Business Tier Patterns 115 Exceptions in General 115 Exception Handling Overview 116 Exercise 3-1: Issue Resolution 117 Logging for All Applications 118 Identify Design Patterns That Address Specific Challenges in the Web Tier, Including Authentication, Authorization, and Scaling and Clustering to Meet Demand 119 Security Patterns by Tier 120 Scaling and Clustering Patterns 124 JEE Clustering 125 Identify Java EE Technologies, Including JMS, JCA, and Web Services, and Design Patterns That Address Specific Challenges in Enterprise Integration 128 Java EE Technologies: JMS and Design Patterns in Enterprise Integration 128 Exercise 3-2: Publish/Subscribe Messaging 129 Java EE Technologies: JCA and Design Patterns in Enterprise Integration 129 Java EE Technologies: Web Services and Design Patterns in Enterprise Integration 132 Identify the Challenges in Integrating Enterprise Resources, the Java EE Technologies That Address Them (Including JPA and JDBC), and the Communication Protocols That Support Tier-to-Tier Communication (Including RMI, HOP, and CORBA) 135 Integration of Enterprise Resources 136 The Evolution of Enterprise Integration 139 / Two-Minute Drill 144 Q&A Self Test 149 Self Test Answers 153 Ill

X OCM Java EE 6 Enterprise Architect Exam Guide 4 Integration and Messaging 157 Identify the APIs Available for a Java EE Technology-Based System to Communicate with External Resources. Outline the Benefits and Drawbacks of Each Approach 158 Java Message Service (JMS) 159 Java EE Connector Architecture (JCA) 159 Java API for XML-based Web Services (JAX-WS) 160 Java API for RESTful Web Services (JAX-RS) 160 Java Database Connectivity (JDBC) 161 Java Persistence API (JPA) 161 Common Object Request Broker Architecture (CORBA)... 162 Remote Method Invocation (Java/RMI) 163 Identify and Detail the Technologies Used to Integrate Business Components with External Resources, Including JMS and JCA... 164 Messaging Basics 164 Java Message Service 165 Message-Driven Bean (MDB) 166 Java EE Connector Architecture (JCA) 168 Describe the Technologies Used to Integrate Business Components with Web Services, Including XML over HTTP, JSON, SOAP, and REST. 169 What Are Web Services? 169 Extensible Markup Language (XML) 170 JavaScript Object Notation (JSON) 171 SOAP 171 Representational State Transfer (REST) 172 Identify How a Service-Oriented Architecture (SOA) Facilitates System Integration and Best Practices 173 Architecture and Design for SOA 173 Business Process Execution Language (BPEL) 175 Service Component Architecture (SCA) and Service Data Objects (SDO) 175 Enterprise Service Bus (ESB) 175 Best Practices for SOA 177 SOA Governance 177 Comparing Integration Technologies 178

Contents xi / Two-Minute Drill 179 Q&A Self Test 184 Self Test Answers 188 5 Business TierTechnologies 191 Background on New Features in Java EE 6 193 Identify the Correct EJB Technology to Apply for a Given Scenario, Including Entity Classes, Session Beans, Message-Driven Beans, Timers, Interceptors, and POJOs 195 Enterprise Bean Overview 195 Entity Class 196 Entity Bean 197 Session Bean 198 Message-Driven Bean (MDB) 200 Timer Service 201 Interceptors (AOP) 201 Identify Benefits and Drawbacks of Different Persistence Technologies such as BMP, CMP, and JPA, Including Ease of Development, Performance, Scalability, Extensibility, and Security 203 Gauging Benefits and Drawbacks 203 Bean-Managed Persistence (BMP) 205 Container-Managed Persistence (CMP) 206 Java Data Objects (JDO) 206 Java Database Connectivity (JDBC) 207 Java Persistence API (JPA) 208 Comparing Persistence Types 209 Identify the Benefits and Drawbacks of Implementing Web Services in the EJB Component Container 209 Web Services 210 Enterprise Beans and Web Services 210 Select the Appropriate Use of JPA and JPQL in a Given Scenario... 211 Java Persistence API (JPA) 211 Java Persistence Query Language (JPQL) 212 / Two-Minute Drill 214 Q&A Self Test 219 Self Test Answers 222

Xii OCM Java EE 6 Enterprise Architect Exam Guide 6 Web Tier Technologies 225 Web Tier Development Roles 226 Identify the Benefits and Drawbacks of Using URL Rewriting and Cookies to Manage HTTP Session State 227 HttpSession Object 228 Session State Tracking: Should We Use Cookies or URL Rewrite? 229 Maintaining State Using JEE Session Beans 232 Exercise 6-1: Session State 233 Servlets 233 Identify Appropriate Uses for JSP and Servlet Technology, and JavaServer Faces in a Given Java EE Application 233 Servlets 234 JavaServer Page 235 JavaServer Faces 235 Scripting Languages 238 Web Tier Input Data Validation 239 Control and Logic Concerns 239 Web Flow 241 Identify the Benefits of Using an EJB Container with a Web Container Instead of a Web Container Alone 242 Benefits of Enterprise Beans 242 Session Beans 246 Message-Driven Bean (MDB) 248 Identify the Differences between Client Pull and Server Push Architectures 248 Identify the Benefits and Drawbacks of Using a Browser to Access Asynchronous, Lightweight Processes on the Server 250 Browser Asynchronous APIs 251 / Two-Minute Drill 258 Q&A Self Test 261 SelfTest Answers 266 7 Design Patterns 271 Benefits of Using Design Patterns 273 Design Patterns by Gamma et al., AKA the "Gang of Four" (GoF) 273 Benefits of a Specified GoF Design Pattern 275

Contents xih Select an Appropriate Gang of Four (GoF) Pattern for a Given Application Challenge 278 GoF Creational Design Patterns 278 GoF Structural Design Patterns 284 GoF Behavioral Design Patterns 292 Identify a Gang of Four (GoF) Design Pattern, Using a Description of Its Features 306 Java EE Patterns 308 Demonstrate Knowledge of Java EE Design Patterns 309 Identify the Use of the Law of Leaky Abstractions or a Specific Anti-Pattern in a Given Scenario 336 / Two-Minute Drill 347 Q&A Self Test 352 Self Test Answers 359 8 Security 363 Identify Elements of the Security Model in the Java SE Environments for Remote Clients, Including Web Start, Applets, and the Role of the SecurityManager Class 364 Java Web Start 365 Java Applet 365 The Security Manager 366 More Java SE Security Features/Mechanisms 368 Select Appropriate Locations to Implement Java EE Security Technologies or Features in a UML Component and Deployment Diagram 369 Java EE Security Depicted within UML Component Diagram 369... Java EE Security Depicted within UML Deployment Diagram 369... Classify Security Threats to an Enterprise Application and Select the Measures an Architect Can Propose to Mitigation Them 372 Security Architectures 372 Security Threats 374 Identify Techniques Associated with Declarative and Programmatic Security, Including the Use of Annotations, Deployment Descriptors, and JAAS Technology 378 Security Model 379 Securing Web Components 380 Securing Enterprise Bean Components 384 Java Authentication and Authorization Service (JAAS)... 386

XIV OCM Java EE 6 Enterprise Architect Exam Guide Identify the Security Technologies That Apply to an Application's Code, Messaging, and Transport Layers 387 Application-Layer Security 387 Message-Layer Security 388 Transport-Layer Security 388 / Two-Minute Drill 390 Q&A Self Test 393 Self Test Answers 397 A Java (EE) Enterprise Architect Certified Master Assignment 399 Scenario 400 WebSphere Application Server 404 Continuous Trade Processing System 404 SQLBIS Database Server 405 Model and Develop the Case Study 405 Actor Definition 406 Business Process Model 406 Sequence Diagrams 411 Class Descriptions 415 Class Diagrams 415 State Transition (Life Cycle) Diagrams 416 Trade System Design and Implementation 418 Stock Order Entry Screen 418 Trade Application Packages 422 Trade Application Implementation Infrastructure 424 Deployment Diagrams 426 Final Tips 429 B Java (EE) Enterprise Architect Certified Master Essay Exam 431 The Case Study Infrastructure 433 Application Servers 434 Continuous Trade Processing 434 SQLBIS Database Server 434

Contents XV Essay Questions and Sample Answers 435 How Does Your Design Handle Availability? 435 How Does Your Design Handle Reliability? 435 How Does Your Design Handle Scalability? 436 How Does Your Design Handle Performance? 437 How Does Your Design Handle Security? 439 How Does Your Design Handle Extensibility? 441 How Does Your Design Handle Maintainability? 441 How Does Your Design Handle Manageability? 442 How Does Your Design Handle Persistence? 443 How Does Your Design Handle the Presentation Tier? 443 Before the Exam: Prepare and Practice 443 How to Proceed at the Exam 444 C About the CD-ROM 447 System Requirements 448 Total Tester Premium Practice Exam Software 448 Installing and Running Total Tester Premium Practice Exam Software... 449 PDF Copy of the Book 449 Technical Support 450 Total Seminars Technical Support 450 McGraw-Hill Education Content Support 450 Glossary 451 Index 465