This 5-day class is a hands-on workshop that will guide students through the mechanics of building a CORBA application using Java and Inprise's VisiBroker. Hands-on workshops constitute approximately 50% of the class.
CORBA Training Prerequisites
The CORBA Programming Primer class (CORBA concepts) and a strong working knowledge of Java programming.
CORBA Training Course duration
5 Days
CORBA Training Objectives
After successfully completing this course, you will be able to:
Introduce the IDL language
Develop a working application
Install and run the application
Troubleshoot a faulty application
CORBA Training Course outline
CORBA, Java & VisiBroker: An Overview
What is CORBA?
What is IDL?
IDL-to-Java Mapping
What the Mapping Lacks
Proprietary Mappings
What Is VisiBroker?
CORBA Terminology
CORBA Development: The Basics
IDL Part I: Basics
A Simple IDL Example
IDL Fundamentals
Mapping Basic Types
Conversion Issues
IDL Modules
Mapping Modules
The CORBA Module
IDL Interfaces
Interface Inheritance
Attributes
Operations
out & inout Arguments
Operations: An Example
Forward References
Compiling the IDL
Writing a CORBA Component: An Overview
Writing the Servant
Generated Java Output
Generated Server Code
Other Generated Code
VisiBroker's Java API
Compiling Java Code
Writing the Servant: The ImplBase Technique
Elements of ImplBase
The ImplBase Layout
The Base Interface
The ImplBase Class
The Servant Class
The Example Class
Setting Up the Server
Where is the ORB?
What is a Server?
Basic Server Structure
1. Initialize the ORB
The ORB Object
2. Obtain a BOA
3. Instantiate the Servant
4. Export the Object
5. Wait for Requests
6. Deactivate the Object
The vbj Utility
Managing Servers in VisiBroker
Locating Objects
Using the Smart Agent
Starting the Server
The OAD
Implementation Repository
Starting the OAD
Registering a Server
Server Activation Policies
Other Daemon Commands
The osfind Utility
Writing a Client
Static vs. Dynamic Invocation
Static Invocation
Getting an Object Reference
Binding to Named Objects
bind( ): Bind Options
Using a CORBA Object
Client Applets
Writing the Servant: The TIE Technique
The TIE Technique
The Components of "TIE"
The TIE Layout
Using the TIE Technique
Exception Handling
Exceptions in CORBA
System Exceptions
Completion Status
User Exceptions
User Exceptions in Java
Configuring VisiBroker
VBJ's Environment
VisiBroker Properties
Initializing the ORB
ORB Properties
Initializing the BOA
BOA Thread Policies
BOA Properties
IDL Part II: Additional Elements
Typedefs
Structures
Structures in Java
Enumerations
Enumerations in Java
Arrays
Sequences
Sequences in Java
Interface Inheritance
IDL Inheritance & Java
Testing for "Is A"
Narrowing
Writing ORB-Portable Applications
ORB-Portability
Object Reference Format
Locating a Remote Object
Stringified Reference
Using a CORBA Service
Activating the Server
General CORBA Features
Server Features
The Naming Service
A Naming Graph
Naming Concepts
VisiBroker Names
Naming Service Issues
Getting Initial Reference
Building a Name Entry
NamingContext
NameComponent
Name
Building a Context
Binding an Object
Resolving a Name Entry
Distributed Name Service
VBJ's Naming Service
Advanced VisiBroker Features: Activators
What is an Activator?
Creating Activators
Implement Activator Interface
Register Activator
Modify Factory
A Custom Activator Example
CustomerPersistence Interface
CustomerServant Class
CustomerActivator Class
Other Changes
Advanced VisiBroker Features: Smart Stubs
Smart Stubs: Overview
Why Use Smart Stubs?
How Smart Stubs Work
Creating a Smart Stub
Installing a Stub Class
Why Use Smart Stubs?
Client-Side Caching
Batch Retrieval of Attributes
Method-Level Load Balancing
Other Smart Stub Uses
Hardware/Software Requirements
Hardware Requirements
Intel-based PC Workstation (Windows 95, 98 or NT) with minimum 486 33Mhz Processor and a minimum of 32 MB memory
or
SUN Solaris/SPARC and a minimum of 32 MB memory
Software Requirements
Java JDK1.1 Software and Documentation*
VisiBroker for Java 3.3
Adobe Acrobat Reader*
Student Files
Text editor*
Please contact your training representative for more details on having this course delivered onsite or online