Notes
Slide Show
Outline
1
 
2
"Agenda"
  • Agenda
3
"Summary of Previous Session"
  • Summary of Previous Session
4
Session 3 - Follow-up
  • Application Servers for Enhanced HTML (traditional)
    • a.k.a., Page-Based Application Servers
    • Tag-Oriented (e.g., Macromedia ColdFusion 5.0 Server)
    • Script Oriented (e.g., Microsoft IIS with ASP, PHP)
    • Mostly Used to Support Standalone Web Applications
    • Typically less expensive than standalone and IDE-based servers
    • HTML-based development
  • New Generation Page-Based Script-Oriented App. Servers
    • First Generation Extensions (e.g., Microsoft IIS with COM+/ASP)
    • Servlet/JSP Environments
    • XSP Environment
    • Can now be used as front-end to enterprise applications
    • Hybrid development environments


5
Session 3 – Homework Software
  • Visual Studio 2005 Win32
    • http://msdn.microsoft.com/vstudio/products/
  • SunOne Active Server Pages
    • http://wwws.sun.com/software/chilisoft/index.html
  • Future
    • .Net Framework SDK 2.0
      • http://msdn.microsoft.com/netframework/
6
"Network and Socket Programming"
  • Network and Socket Programming
7
"Distribution Mechanisms"
  • Distribution Mechanisms
8
Part I
 
CORBA

Also See Session 4 Handout on:

“The Object Request Broker (ORB) Architecture”
“The OMG Object Model”
“The Interface Definition Language (IDL)”
“IDL to Java Mapping”
“A Simple Java ORB Application”
“Coding Examples for VisiBroker, OrbixWeb, and Java”
“Objects by Value over CORBA”
“IDL to C++ Language Mapping”
“DII, IR, DSI, and IMR”
“Using the Dynamic Invocation Interface (DII)”
9
CORBA DOC Platform
(Logical Architecture)
10
Sample Java CORBA Application
11
CORBA Development Process
(pre-CORBA3)
12
Coding Server with BOA ImplBase (pre-CORBA 2.3)
13
Coding Server with BOA TIE
(pre-CORBA 2.3)
14
Coding Server with POA Inheritance (post-CORBA 2.3)
15
Coding Server with POA Delegation (post-CORBA 2.3)
16
Object by Value
(post-CORBA 2.3)
  • A valuetype can support an interface. The client can receive a local copy of the valuetype or a remote interface


17
Object by Value
(continued)
  • Example:
      • module Test {
        • valuetype OBV {
          • private long amount;
          • long getAmount();
          • init(in long newAmount);
        • };
        • interface ByValue {
          • OBV getOBV();
        • };
      • };
18
Object by Value
(continued)
  • An abstract interface can be passed by value or by remote reference. The client can receive a local copy of a valuetype or a remote reference via the same operation call


19
Part II
 
RMI and RMI-IIOP

Also See Session 4 Handout on:

“RMI Example”
“RMI-IIOP Example”
20
Java/RMI Interface Definition
(stockMarket.java)
  • Example:


  • package SimpleStocks;
    import java.rmi.*;
    import java.util.*;

    public interface StockMarket extends java.rmi.Remote
    {
    float get_price( String symbol ) throws RemoteException;
    }


21
CORBA IDL
(stockMarket.idl)
  • Example:


    • module SimpleStocks
      {
      interface StockMarket
      {
      float get_price( in string symbol );
      };
      };


22
Part III
 
DCOM

See:

 “http://www.javacoffeebreak.com/articles/rmi_corba/”
23
COM IDL
(stockMarket.idl)
  • Example:
    • [
      uuid(7371a240-2e51-11d0-b4c1-444553540000),
      version(1.0)
      ]
      library SimpleStocks
      {
      importlib("stdole32.tlb");
      [
      uuid(BC4C0AB0-5A45-11d2-99C5-00A02414C655),
      dual
      ]
      interface IStockMarket : IDispatch
      {
      HRESULT get_price([in] BSTR p1, [out, retval] float * rtn);
      }




24
COM IDL
(continued)
  • Example:
    • [
      uuid(BC4C0AB3-5A45-11d2-99C5-00A02414C655),
      ]
      coclass StockMarket
      {
      interface IStockMarket;
      };
      };


25
Part IV
 
DOC Platform Interoperability

Also See Session 4 Handout on:

“Interoperability and the CORBA Specification”
“Object Request Brokers Interoperability”
26
Implementation of an IIOP Bridge
27
ORB Interoperability
28
ORB Interoperability
(continued)
29
Part V
 
Web-Enabled DOC Applications
30
"Web Communications"
  • Web Communications
31
Part VI
 
Conclusion
32
"Summary"
  • Summary
33
"Readings"
  • Readings
34
"Project Frameworks"
  • Project Frameworks
35
"Assignment"
  • Assignment
36
Next Session:
Object Management Architectures
  • Object Management Architectures
  • Java-Based Application Servers
  • Windows Services
  • VMs and Component Technologie
    • JVM and .Net CLR
    • Abstract Component Infrastructures
  • .Net
  • Introduction to Enterprise Component Development
  • Introduction to Component-Based Architectures Design