<IMG SRC="fla_train.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0>
Click Here for the Outline in PDF Version
Course Outline: Corba Architecture and Programming Using Java

(4 Days) with Hands-On Labs
    Learning Objectives

  • Understand the Object Management Architecture, the role of an Object Request Broker, and the assistance of the Object Adapter
  • Understand the role of Interface Definition Language in achieving interoperability between various components and design distributed systems using IDL
  • Understand the significance of CORBA Services and the implications of using or integrating various services into a distributed component design
  • Understand the relationship between the Java environment and CORBA, including the .details of the IDL-to-Java language mapping
  • Build Java/CORBA server and client applications
  • Address practical distributed design issues


This course description should be used to determine whether the course is appropriate for you based on your current skill and technical training needs. Technical information is provided on the intended audience, course prerequisites, and covered topics. Course content, prices, and availability are subject to change without notice.


Course Audience

This course is designed for programmers and developers who are interested in learning about how (1) various distributed-computing Java APIs fit into a CORBA system, (2) a solid intermediate understanding of Java Programming for CORBA – the Common Object Request Brokerage Architecture.

Course Description

This 4-day course introduces Java programmers to the architecture and programming of CORBA. The course consists of two modules, also available separately.

The first module is designed to introduce students of various backgrounds to the Common Object Brokerage Request Architecture, or CORBA. The module begins with a short treatment of the origins and history of CORBA in the Object Management Group, and then the fundamentals of the Object Management Architecture – the infrastructure whose goals and requirements define CORBA – are covered. ORBs and Object Adapters are discussed, and one chapter is devoted entirely to Interface Definition Language: its role in the architecture, grammar, and design issues. A third chapter covers many of the most important CORBA Service specifications and prompts students to consider the architectural implications of each.

The second module gives students a solid intermediate understanding of Java Programming for CORBA – the Common Object Request Brokerage Architecture. We take a brief look at the practical relationship between the Java environment and CORBA, including how various distributed-computing Java APIs fit into a CORBA system. The Java ORB and language mapping are treated in detail. Students design and build servers, command-line and GUI-driven clients, and peer servers for a CORBA system. There is a focus on basic mechanics of distributed object interaction – using the ORB, managing object references, remote versus local access using interfaces and structs. Students will also look at thornier issues of system design and implementation with Java and CORBA, such as use of factories, naming servers, controlling location, lifecycle, and persistence.

Course Objectives

At course completion the student will be able to perform the following tasks:


  • Understand the Object Management Architecture, the role of an Object Request Broker, and the assistance of the Object Adapter
  • Understand the role of Interface Definition Language in achieving interoperability between various components and design distributed systems using IDL
  • Understand the significance of CORBA Services and the implications of using or integrating various services into a distributed component design
  • Understand the relationship between the Java environment and CORBA, including the .details of the IDL-to-Java language mapping
  • Build Java/CORBA server and client applications
  • Address practical distributed design issues
Prerequisites

A solid experience with Java programming is required. A firm understanding of OO concepts is strongly recommended.

TOPICS COVERED IN LECTURE & LAB

Module 1. Introduction to CORBA

The Object Management Architecture

  • The Object Management Group
  • CORBA and the Goal of Interoperability
  • Object Request Brokers
  • Object Adapters
Interface Definition Language

  • The Role and Use of IDL
  • IDL Constructs
  • Interfaces, Operations, Attributes
  • IDL Design Issues
  • Factories
CORBA Services

  • Naming
  • Events and Notifications
  • Transactions and Concurrency
  • Trader
  • LifeCycle
  • Persistent State
  • Collections
  • Security
  • Externalization
Appendix A. References

Module 2. Java Programming for CORBA

Java and CORBA

  • Relationship Between Java and CORBA
  • Portability
  • RMI and CORBA
  • Other Java APIs and CORBA
  • JavaIDL
  • CORBA Applications and Applets
  • Practical Motivations to Use CORBA
The Java ORB

  • The JavaIDL ORB
  • Use of Alternate ORB Implementations
  • Initializing the ORB
  • Creating Requests
  • Object References
The Java IDL Mapping

  • JavaIDL Compiler
  • Mapping for Basic Types
  • Mapping for Modules
  • Mapping for Interfaces
  • Implementation Base versus Tie
  • Helpers and Holders
  • Mapping for Structs
  • Mapping for Exceptions
  • Mapping for Sequences
  • Mapping for Arrays
CORBA Object Implementation

  • What’s Done For You
  • Writing the Servant
  • Implementation Base or Tie?
  • Writing the Server
  • Publishing the Object Implementation
  • Simple Object Persistence
The CORBA Client

  • Building a Client
  • Object Types and Narrowing
  • Making Requests
  • Peer-to-Peer Systems
  • Controlling Location
Distributed Design Strategies

  • Factories
  • Naming
  • Lifecycle
  • Managing Location
  • Persistent Object Strategies and the PSS
Appendix A. References

Policy