Download - CORBA AND SOAP
![Page 1: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/1.jpg)
CORBA AND SOAP
Unmesh Kulkarnii2 Group
Ashish V. TendulkarDirectory Database integration group
(www.eusersolutions.com)
Persistent Systems Pvt. Ltd. Pune (www.pspl.co.in)
![Page 2: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/2.jpg)
OUTLINE
• Introduction to middleware• CORBA Concepts• Problem Domain• SOAP• Synergies• Conclusion
![Page 3: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/3.jpg)
What is Middleware?
Glue for Components Sits Between OS and
Applications Distributed Object Services CORBA, COM, DCE, Java/RMI … XML?
![Page 4: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/4.jpg)
CORBA - Objectives
OS Independence Language Independence Remote Methods Static/Dynamic Invocations Distributed Services
![Page 5: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/5.jpg)
Interoperability
Standardization of – Binary Formats : in-memory API’s : Programming Support IDL, Type Libraries, File Formats Data Representation – CDR/NDR Transfer Protocol
![Page 6: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/6.jpg)
CORBA provides..
The PRO’s : IDL Stub-skeleton
generators Services API’s CDR IIOP
And The CON’s Complexity Vendor dependency Costly - large
volumes Behavior
marshalling Internet / Firewalls COM-CORBA Inter-
operability
![Page 7: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/7.jpg)
The problem..
Client App.
Proxy Server
Server
Application Server
Firewall
![Page 8: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/8.jpg)
Implications
Industry not shifted completely to either one
Vendor specific
Lack of interoperability
Require high-tech runtime environment
![Page 9: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/9.jpg)
Why XML?
Simple text markup language
Platform, language and vendor agnostic
Easily extensible
Capable of solving interoperability problem
![Page 10: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/10.jpg)
Why HTTP?
Ubiquitous
Supported by every web browser and server
Effective technology for transferring text, graphics and other information
![Page 11: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/11.jpg)
XML + HTTP = SOAP
HTTP is used for transport
XML as encoding scheme
Endpoint HTTP based URL for the target
Object mapping: implementation specific
![Page 12: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/12.jpg)
SOAP call anatomy
![Page 13: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/13.jpg)
SOAP Component
HTTP Headers
SOAP method name
SOAP Envelope
SOAP Header
SOAP Body
Call element
Object Endpoint IDMethod/Interface ID
Extension Headers
Parameter Data
![Page 14: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/14.jpg)
Uses of SOAP
SOAP greatly simplifies data exchange in B2B application over extranet
Enables web site to integrate services from other sites
Remote scripting more prevalent with SOAP
Non-browser client could seamlessly access a service across web
![Page 15: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/15.jpg)
Example Message
POST /string_server/Object17 HTTP/1.1 Host: 209.110.197.2 Content-Type: text/xml Content-Length: 152 SOAPMethodName: urn:strings-com:IString#reverse <Envelope> <Body> <m:reverse xmlns:m='urn:strings-com:IString'>
<theString>Hello, World</theString> </m:reverse> </Body>
</Envelope>
![Page 16: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/16.jpg)
Example Response
200 OK Content-Type: text/xml Content-Length: 162
<Envelope> <Body> <m:reverseResponse xmlns:m='urn:strings-
com:IString'> <result>dlroW ,olleH</result> </m:reverseResponse> </Body> </Envelope>
![Page 17: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/17.jpg)
IOR : Object Reference
Interface Name /Method Name
Method Invocation with Parameters
POST/ObjectURI HTTP/1.1
SOAP:MethodName
SOAP:Envelope SOAP:Header SOAP:Body SOAP:CallElem
ent
CORBA vs SOAP
![Page 18: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/18.jpg)
Advantages
Simplest Data Representation Hardware/Language Neutral No Vendor Dependencies Simple and Human-readable Typing Flexibility Firewall Issues
![Page 19: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/19.jpg)
Then Why Not XML?
Distribution Support Resource location, control and
management Services – Transactions, Events, Security
etc. Error Handling Non-text data Quality of Service – Reliability Efficiency (Redundancy Elimination)
![Page 20: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/20.jpg)
XML With CORBA
XML – Structure CORBA – Infrastructure XMI – Metadata Interchange XML Interfaces – Components
accepting/emitting XML documents
![Page 21: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/21.jpg)
XML With CORBA….
Examples : XMI – Exchange of UML models
between Design tools and repositories
Persistent storage of components in IDE’s: JavaBean Persistence Resilience to versioning of libraries/VM’s Defaults/Redundancy elimination
![Page 22: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/22.jpg)
Synergy
![Page 23: CORBA AND SOAP](https://reader035.vdocuments.us/reader035/viewer/2022070404/56813aa5550346895da2a088/html5/thumbnails/23.jpg)
Conclusion
SOAP is platform independent, language neutral protocol
SOAP does not replace COM and CORBA SOAP works in place of DCOM and IIOP SOAP does not pose huge security risks Supports interoperation between
different vendor specific implementations