Web Services: A Bridge between CORBA and DCOM
|
|
- Ethelbert Welch
- 6 years ago
- Views:
Transcription
1 Web Services: A Bridge between and DCOM Mohammed Mohsen AL-Khawlani Abstract In today s market, there are many distributed systems technologies and each technology has its own strengths and weaknesses. Each technology may work better than the others under some circumstances and it will work worse than the other technologies under other circumstances. Hence most of these technologies will survive, and new mechanisms should take place to allow the different technologies to work together. This paper provides a comprehensive comparison between the three most common distributed systems technologies, DCOM, and Web Services; it introduces the /DCOM interoperability problem, explains the OMG s specification to solve the problem, and outlines the existing methods for bridging and DCOM and their abilities and limitations. It explains why and how Web Services can be used to solve the /DCOM interoperability problem and demonstrates that by implementing a simple /DCOM bridge using the Web Services techniques SOAP, WDSL and UDDI. 1. Introduction In today s market, there are several distributed system technologies. The two most popular, widely accepted and implemented are the Common Object Request Broker Architecture () by the Object Management Group (OMG) and the Distributed Component Object Model (DCOM) by Microsoft. Recently, the Web Services technology promises to overcome the limitations, complexity and interoperability problems of and DCOM. It takes the strengths of the existing component based technologies and the Web. Although the three technologies do the same work and all of them manage the communication between the clients and the remote server objects through a well-defined interface, every technology has its own architecture, strengths and weaknesses. Each technology will be more suitable for some environments and for some business and technical reasons than the other technologies. Because each technology has its own underlying components, which are incompatible with the components from the other technologies and many interoperability problems appear when a developer attempts to mix them in one enterprise. Due to the unique characteristics, the ease of use and implementation of the Web Services technology, it can be used as integration technology between the other technologies. This paper argues and supports that by implementing a simple /DCOM bridge using the Web Services techniques SOAP, WSDL, and UDDI. 2. / DCOM Bridging Overview 2.1 A Comprehensive Comparison on, DCOM and Web Services Table (1): compares the basic characteristics of, DCOM and Web Services technologies. Table (1): The basic differences of, DCOM and Web Services Characteristics DCOM Web Services Support and Development Organization Object Management Group (OMG) Microsoft SOAP and WSDL specification from World Wide Web Consortium(W3C) Department of Electronical and Computer Engineering, Faculty of Science and Engineering, University of Science and Technology Sana'a, Republic of Yemen.
2 Characteristics DCOM Web Services Specification Specification Implementation/specification Specification Mainly Windows, but it can Platform- Platform Support support other platforms with Platform independent Independent some efforts Data model Client-Server coupling Language Support Wire Protocol Object Oriented model Object Oriented Model message exchange model Tight-Coupling Tight-Coupling Loose -coupling any language with an IDL binding Internet Inter- ORB Protocol (IIOP) any language with an IDL binding Object Remote Procedure Call (ORPC) any language SOAP and Hyper Transfer Text Protocol (HTTP) Internet friendly No No Yes Table (2) compares the architectural and programming characteristics of, DCOM, and Web Services technologies. Table (2): The core differences of, DCOM and Web Services Characteristic DCOM Web Services Interface Definition IDL MIDL WSDL Server-side stub Skeleton Stub Stub Client-side stub Stub Proxy Proxy Object class and interface Identification Object References Dynamic Invocation Activate the object Implementation locating an object implementation Object Storage Type information for methods Format for payload On demand code shipping Error Handling Firewall traversal Identification through Object and Interface Names. Reference through an Object Reference (OR) Dynamic Interface Invocation (DII) By an Object Adapter (OA) Identification through objects and interface IDs. GUID and CLSID. Reference through an Interface Pointer (IP) Dispatch interface By a Service Control Manager (SCM). WSDL Reference through an Uniform Resource Locator (URL) UDDI/WSDL UDDI ORB SCM UDDI Implementation Repository Interface Repository The binary format Common Data Representation (CDR) Registry Type library The binary format :Network Data Representation (NDR) UDDI Repository UDDI/WSDL The Unicode format (SOAP) No Yea,as ActiveX Controls No IDL exception not firewall friendly HRESULT or Error Objects (of type IErrorInfo) not firewall friendly SOAP fault messages firewall friendly
3 2.2 The Needs for Bridging and DCOM Both and DCOM share many characteristics and both of them allow clients to invoke remote objects as if they were local. However, the underlying components, object identification method, object storage, and protocols are incompatible. The similarities disappear when a developer attempts to mix both technologies in one application. 2.3 OMG s COM/ Interworking Specification The OMG understood the needs for bridging and DCOM and decided to include the Interworking Architecture, which is the specification for bridging the two technologies as a part of the specification. The specification for bridging COM and is called part A of the Interworking Architecture and the extension of this specification for bridging DCOM and is called part B. According to [1] and [2] the Interworking Architecture steps can be summarize as follows. 1. Interface Mapping: both technologies use IDLs to define the objects interface by which the objects can be exposed. For a object to be viewed as a DCOM object and vice versa there must be a mapping between their interfaces. 2. Interface Composition Mapping: While supports single interface with multiple inheritance, DCOM supports multiple interfaces with single inheritance. For successful /DCOM bridging there must be a mapping between the two mechanisms 3. Identity Mapping: While uses the interface name to identify the object, DCOM uses a global unique ID (GUID). Hence, the mapping between the different Interface IDs that are used by and DCOM is required. According to (part B) [3] of the OMG s COM/ Interworking specification the / DCOM bridge can be like what is shown in figure (1) below. On the left side of the figure, a DCOM client wants to send a request to a target object on the right side. On the right side a client wants to send a request to a DCOM target object on the left side. The goal of the /DCOM bridge is to map and deliver any request from the client transparently to the target. To achieve this goal, an object in each side called a View is provided. The View is an object on each side that presents the identity and interface of the target on the other side. COM Client DCOM COM View Object ORB Target Object COM Target Object View Object Client Fig. (1) Bridging /DCOM The View in system exposes an interface, called the View Interface, which is isomorphic to the target s interface in the DCOM system. The methods of the View Interface convert requests from the clients into requests on the target s interface in the DCOM system. The View is a component of the bridge and the bridge may be composed of many Views. Part A and Part B of OMG s COM/ Interworking Architecture specify six configurations of the bridge, as shown in Figure (2) below.
4 Client Side Intermediate Machine Server Side COM Bridge Bridge COM DCOM Bridge DCOM Bridge Bridge DCOM Bridge DCOM Fig. (2) /DCOM interworking configuration models Figure (2) above shows that the /DCOM bridge can be local (the modes1, 2, 3, 5) or remote (the modes 4, 6). While the local bridge uses and extends the existed ORB in the local machine to connect the and DCOM objects, the remote bridge enables the connection between the and DCOM objects through separate machine that executes the bridge components. The first and second modes in figure (2) are for bridging and COM and the rest of the modes are for bridging and DCOM. 2.4 The Existing /DCOM Bridges The OMG provides a specification for and DCOM bridging, but it does not provide any implementation. Different companies have provided many bridge implementations, which are supposed to be compliant with OMG s specification. Some of these commercial products are OrbixCOMet from IONA Technology [4], ObjectBridge from Actional Corporation [5], and COM2 from PeerLogic [6]. Although those bridges performed reasonably well for most of the six possible configurations, they are suffering from the following problems: 1. Their functionality and performance still limited. 2. Some of them are not bi-directional and can only map the objects to the COM/DCOM objects, or vice versa. 3. Some of them satisfy part A of the OMG s specification only and they don't support the interworking between the objects and DCOM objects. 4. All of them add overhead processing time. This overhead is unreasonable and unacceptable for the complex and real-time applications. 5. All the bridges are not Internet friendly. 6. All of them impact the performance of DCOM and application.this is due to the additional complexity that results from the complete two-way translation from Internet Inter-ORB Protocol (IIOP) to DCOM Object Remote Procedure Call (ORPC) 7. Any changes to s IIOP or DCOM s protocols will affect the bridges.
5 2.5 Why Web Services can solve the Problem? Web Services technology can be used to integrate the existing distributed technologies like and DCOM. This role can be argued by considering the following arguments: 1. The Nature of Web Services (XML, SOAP and HTTP based): while XML provides a platform and language independent mechanism for data encoding and formatting, SOAP defines a simple way to format and bundle the information for exchange across the distributed computing environments. SOAP works above HTTP protocol to define a platform and language independent way to make remote procedure calls between systems. Hence, if XML and SOAP work together, the problem of making systems at two companies compatible with each other will be solved and the integration and interoperability problems can be simplified in layers. [7] 2. Web Services Support: Web Services technology has unprecedented industry backing. All the major computing companies and organizations provide fully support and endorse to the specification, implementation and developing of SOAP and WSDL. "The industry remains unfragmented with respect to these efforts, something that never happened for COM/DCOM, or any other distributed computing technologies. This fact puts it into the front when it comes to being able to integrate the other technologies " [8]. 3. Technologies Integration, not Replacement:, DCOM and the other technologies have proven their ability to provide high performance, dependability, and scalability solutions for a variety of distributed computing problems. Hence, the coming role of Web Services technology should be the integration for these mature technologies and not to replace them [8]. 2.6 How Web Services can solve the Problem? As described in section 2.5 above, Web Services are more likely to be the most suitable way to integrate the existing distributed computing technologies. The direct way to do that is by exposing the other technologies applications as Web Services. There are two levels where the other technologies objects can be exposed as Web Services, the first is at the binary level and the second is at the source code level Bridging and DCOM with Web Services at the Source Code Level This is not a trivial process, for example, directly exposing a object requires that the Naming service where it's registered also be exposed as a Web Service, and a client of such a Web Service must know enough about Naming to be able to navigate it and find its target service. Protocol translator, gateway, should take place to be responsible for translating SOAP data into data and translating the object's IDL definition into WSDL. This gateway should also be responsible for mapping IIOP/GIOP messages to SOAP requests and responses. The role of the gateway is to receive the SOAP requests from the Web client, forward them to the required object as request, and return the result to the client as a SOAP response. According to [9] the steps that are involved in the processing of the client request are as follows. 1. The gateway receives the client SOAP request. 2. The gateway extracts the WSDL description from the SOAP request. 3. The gateway extracts the IDL description of the required object. 4. The gateway builds A dynamic request and send it to the object 5. The gateway builds a SOAP response out of the response.
6 Figure (3) shows how objects can be exposed to web clients. Fig. (3) objects exposed as Web Services. [9] To bridge and DCOM with Web Services at the source code, the developer needs to understand the three technologies at the same time. This type of integration will be harder if the applications are not open source or if they are coming from third party. Figure (4) shows a proposed /DCOM bridge using Web Services at the source code level. Web Service Client SOAP/HTT IIOP to SOAP Mapping CDR/IIOP Object IDL UDDI Repository IDL to WSDL Mapping Web Service Client SOAP/HTT ORPC to SOAP Mapping NDR/ORPC DCOM Object IDL Fig. (4) /DCOM Bridge using Web Services at the source code level Bridging and DCOM with Web Services at the Binary Level Bridging at binary level does not require any mapping between the different protocols of the different technologies. Basic structure for the binary level bridge can be shown in figure (5). Application Web Service Client UDDI Repository Web Services to wrap DCOM and Binaries Fig. (5) Bridging and DCOM with Web Services at the binary level DCOM Application
7 The main benefits of this type of bridging can be summarized as follows: 1. Delivers fast, easy application integration. 2. No changes to applications or the way users typically access their data. 3. Even if the applications are not open source or they are from a third party, they can be integrated rapidly and cost-effectively. 4. The additional complexity and overhead that results from the complete translation between the different protocols will be eliminated. 5. Any changes to s IIOP or DCOM s ORPC protocols will not affect the bridges. 3. The Implementation of a /DCOM Bridge with Web Services It has been discussed in section 2.5 and section 2.6 that the Web Services technology is complementary to distributed technologies such as and DCOM and it will not replace them. In addition, Web Services can give a simple and Web-friendly way to integrate and DCOM. This part will extend that discussion by implementing an application that demonstrates how Web Services can be used for bridging the gap between and DCOM. Bridging and DCOM using Web Services can be implemented in two levels. The first level is at a binary level, which means that the pre-compiled and pre-built and DCOM objects will be exposed as Web Services.The other level is at a source code level, which means that the mapping between the different technologies protocols is required. This part implements a /DCOM bridge at the binary level. 3.1 The Implementation Steps of a /DCOM Bridge with Web Services at a Binary Level To implement a /DCOM bridge at the binary level, the following programs have been implemented. 1. A client/server application in which the object has two methods. 2. A DCOM client/server application in which the DCOM object has two methods. 3. A Web Service that invokes the and DCOM methods. 4. A UDDI registry to publish the Web Services object. 5. A Web Services client The Implementation of the Application Figure (6) shows that the object SIDE has two methods which are: 1. public double get_triang_area( float a, float b, float c) that calculates the area of a triangular according to the equation area = s * (s-a) * (s-b)* (s-c) where a, b and c are the lengths of the triangular sides and s = 0.5 * a * b * c 2. public String get_opposite_cases (String inputstr) that takes a string in the lower case from a text input file, produces the same string in the upper case as output, and writes it to a text file.
8 Fig. (6) The object implementation. The client initializes the ORB by making a call to ORB.init (). Then it gets the root naming context by using NamingContextExt. After that, it resolves the object reference in naming. Finally it gives the user to choose one of the available methods. Depending on the user choice it invokes the suitable method from the server object. Figure (7) shows the client implementation. Fig. (7) The client implementation The Implementation of the DCOM Application Figure (8) shows that the DCOM object has two methods which are: 1. public float get_circle_area(float radius) that calculates the circle area.it takes the radius as input and return the area as output. 2. public String get_reverse (String orgstring) that takes a string from a text input file, produces the reverse order of the string as output,and write it to a text file.
9 Fig. (8) The DCOM object implementation. The DCOM client gives the user the ability to choose the method that is needed. As soon as one method is chosen, the client acquires a pointer DCOMSide to the IDCOMDIDE object's interface, then it starts calling the object's method through the interface pointer as if the object is local Exposing DCOM and Objects as Web Services To expose the DCOM and objects as Web Services, the exec () method of the Java Runtime class is used in the Web Services object. In order to do that a new process object is instantiated and is used to execute the specified command in the Web Services client. The Bridge Web Service Java code can be shown in figure (9) Fig. (9) The Bridge Service implementation. The Bridge Service WSDL is shown in figure (10). The WSDL file contains six major elements: 1. Definitions: define the name of the web service server.bridge, and declare multiple namespaces. 2. Types: describe all the data types that will be exchanged between the client and the service. server.bridge service uses only the XML Schema built-in simple type string. The service has one string variable p0. 3. Message: describes two one-way messages. The first is a single message request with the name Bridge_get_bridge_1_Request and contains one part called p0.the second is a single message response with the name Bridge_get_bridge_Response. 4. PortType: defines the above two one-way messages that are combined to form a complete round-trip operation called get_bridge.
10 5. Binding: provides specific details on how the defined porttype operation get_bridge will actually be transmitted. 6. Service: defines the URL address for invoking the specified service. 7. <soap: address location=" /> Fig. (10) The Bridge Service WSDL definition The Implementation of the Web Service Client The client class must import the package org.systinet.wasp.webservice.registry which allows runtime publishing and finding of Web Services. This package provides the simplest way of service lookup by creating dynamic proxy bridge for the service Bridge which is located on the location serverurl + servicewsdlpath. The serverurl variable can be returned as a string by using the System.getProperty method. By using the dynamic proxy bridge the client can invoke the method get_bridge and the suitable command is passed as input to the method. The Web Services client has three options. The first option is to directly expose the DCOM methods. The second option is to directly expose the methods. The last option invokes the DCOM get_reverse method to get the reverse order of the input string that is read from a text file, then the result is passed to the get_opposite_cases method to get its opposite case, and finally the final result is returned to the Web Services client in a file. Fig. (11) The Bridge Web Services client implementation.
11 4. System Testing and Results 4.1 System Requirement A computer running the Microsoft Windows 2K. Systinet WASP Server 4.51 for Java. Sun Java Platform J2SDK Microsoft Visual J to build the application. However, there is no need for Visual J++ if the exe files from previous build will be used. 4.2 Running the Application and Sample Results 1. Run WASP Server for Java, 4.51 by running the serverstart.bat file on the bin directory of the WASP package. Fig. (12) Run the WASP for Java server 2. Run the Bridge Web Service client by using the command run run_client.this gives the three options that are shown in figure (13). Fig. (13) Run the Bridge Web Service client options 3. To expose the DCOM methods the first option will be chosen Fig. (14) Invoke the DCOM get_cricle_area method by the Web Service client
12 4. To expose the methods the second option will be chosen Fig. (15) Invoke the get_traing_area method by the Web Service client 5. Choosing the third option gives the following results Fig. (16) Invoke the option 3 of the application by the Web client.
13 5. Conclusions This paper has achieved the following objectives. 1. Distributed computing technologies such as, DCOM and Web Services are complementary and each technology has its own strengths and weaknesses. By working together, distributed computing technologies can solve problems that cannot be solved with a single technology. 2., DCOM, and Web Services technologies will survive, and the need for new mechanisms that allow them to work together is necessary. 3. While is the most mature technology to integrate legacy systems and heterogeneous networks, DCOM is the most suitable technology for Windows-based networks. 4. Compared with and DCOM, Web Services is still less powerful but it is more impressive in its simplicity and extensibility. Also Web Services have huge industry backing, which did not happen to any other technology before. 5. Web Services technology is still immature, and their specifications are still under working, but the main principles behind them are stable. 6. The implementation processes for client/server applications with the three technologies are nearly the same.the most important part in developing these applications is how to define a suitable interface for the object. 7. Although the current /DCOM bridges try to fill the gap between the two technologies, they are not good enough to provide a true bi-directional communication between and DCOM objects. Until now the use of a single technology is more reliable, stable and better than using both technologies in one application. 8. The main strength of Web Services lies on its ability to integrate the existing distributed applications, which are based on and DCOM. For Web Services it is better to work as integration and bridging technology rather than working to replace the mature and powerful technologies and DCOM. 9. At the moment the Web Services can provide the basic level of connectivity between different technologies easily, however for full connectivity some real challenges remain due to the incompatibility between the underlying services of the different technologies. 10. Web Services can be used for bridging and DCOM at two levels, the binary level and the source code level. Bridging at the binary level is useful in many cases and it is easy to implement.however, this does not eliminate the need for bridging at the source code level. 11. At binary level bridging, even if the applications are not open source or they are from third party, they can be integrated rapidly and cost-effectively. 12. Many organizations and commercial companies understand the role of Web Services in integrating the other distributed computing technologies and start to release advanced Web Services platforms that provide the required mapping between, DCOM, and Java RMI and Web Services.
14 6. Future Work The work in this paper can be extended and developed in the following areas: 1. Because the implemented bridge was at the binary level of legacy and DCOM applications, the next step is to build the bridge at the source code level where the mappings from IDL to WSDL and from IIOP/ORPC to SOAP are needed. 2. The methods in the object and DCOM component that were published as Web Services in this paper are simple methods and all of them use basic data types. Methods that use more complex date type like array of arrays and array of structures can be used in the future work. 3. The discussion about the similarities and differences between, DCOM and Web Services technologies can be extended to cover all the possible aspects. 4. More investigation and tests can be done to evaluate the existing /DCOM bridges. 7. References [1] K. Raptis, D. Spinellis and S. Katsikas, Java as Distributed Object Glue, University of the Aegean, August 2000, [2] OMG, COM- Interworking Part A, OMG TC Document ORB/ , January 1996 [3] OMG, COM/ Interworking Part B, OMG TC Document orbos/ September 1997 [4] IONA Technology, OrbixCOMet, [5] Actional Corporation, ObjectBridge, [6] PeerLogic, Inc., COM2, [7] Microsoft Corporation, UDDI Technical White Paper, September 2000 [8] Douglas C. Schmidt and Steve Vinoski, Object Interconnections: and XML: SOAP and Web Services, C/C++ users Journal C++ Experts Forum, October 2001, [9] A. Gokhale, B. Kumar and A. Sahuguet, Reinventing the Wheel. vs. Web Services, Bell Labs and Lucent Technologies, June 2002
Distributed Object Bridges and Java-based Object Mediator
Distributed Object Bridges and Java-based Object Mediator Konstantinos Raptis, Diomidis Spinellis, Sokratis Katsikas An important aspect of research on software objects, components, and component-based
More informationDistributed Technologies - overview & GIPSY Communication Procedure
DEPARTMENT OF COMPUTER SCIENCE CONCORDIA UNIVERSITY Distributed Technologies - overview & GIPSY Communication Procedure by Emil Vassev June 09, 2003 Index 1. Distributed Applications 2. Distributed Component
More informationMulti-technology distributed objects and their integration
Ž. Computer Standards & Interfaces 23 2001 157 168 www.elsevier.comrlocatercsi Multi-technology distributed objects and their integration Konstantinos Raptis a,), Diomidis Spinellis b, Sokratis Katsikas
More information1.264 Lecture 16. Legacy Middleware
1.264 Lecture 16 Legacy Middleware What is legacy middleware? Client (user interface, local application) Client (user interface, local application) How do we connect clients and servers? Middleware Network
More informationDistributed Objects. Object-Oriented Application Development
Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming
More informationAn agent tool for integrating componentbased
An agent tool for integrating componentbased applications Ebtehal Alsaggaf 1 and Prof.Dr. Fathy albouraey 2 Faculty of Computing and Information Technology, King Abdulaziz University KAU, Jeddah, Saudi
More informationDistributed Systems Middleware
Distributed Systems Middleware David Andersson, 810817-7539, (D) Rickard Sandell, 810131-1952, (D) EDA 390 - Computer Communication and Distributed Systems Chalmers University of Technology 2005-04-30
More informationSistemi ICT per il Business Networking
Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking SOA and Web Services Docente: Vito Morreale (vito.morreale@eng.it) 1 1st & 2nd Generation Web Apps Motivation
More informationXML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web
Web Services. XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Platform: Windows COM Component Previously
More informationChapter 8 Web Services Objectives
Chapter 8 Web Services Objectives Describe the Web services approach to the Service- Oriented Architecture concept Describe the WSDL specification and how it is used to define Web services Describe the
More informationAgent-Enabling Transformation of E-Commerce Portals with Web Services
Agent-Enabling Transformation of E-Commerce Portals with Web Services Dr. David B. Ulmer CTO Sotheby s New York, NY 10021, USA Dr. Lixin Tao Professor Pace University Pleasantville, NY 10570, USA Abstract:
More informationIntroduction to Web Services & SOA
References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Web Service Definition The term "Web Services" can be confusing.
More informationCORBA Compare to SOAP/Web Services
CORBA Compare to SOAP/Web Services Arman Kanooni Page 1 12/22/02 Table of Content Abstract... 3 Introduction... 4 1. SOAP... 5 1.1. SOAP and Firewalls... 6 1.2. The Payload Format... 6 1.3. Envelope and
More informationDS 2009: middleware. David Evans
DS 2009: middleware David Evans de239@cl.cam.ac.uk What is middleware? distributed applications middleware remote calls, method invocations, messages,... OS comms. interface sockets, IP,... layer between
More informationIntroduction to Web Services & SOA
References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that
More informationPerformance comparison of DCOM, CORBA and Web service
Performance comparison of DCOM, CORBA and Web service SeongKi Kim School of Computer Science and Engineering Seoul National University, 56-1 Sinlim, Kwanak Seoul, Korea 151-742 Abstract - The distributed
More informationDISTRIBUTED COMPUTING
UNIT 1 DISTRIBUTED COMPUTING Distributing Computing is a type of computing in which different components and objects comprising an application can be located on different computers connected to network
More informationSoftware Paradigms (Lesson 10) Selected Topics in Software Architecture
Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1
More informationIIOP: Internet Inter-ORB Protocol Make your code accessible even in future, with the next universal protocol
IIOP: Internet Inter-ORB Protocol Make your code accessible even in future, with the next universal protocol My Articles: Home Networking Wearable Computing IIOP Meet My Friend Intelligent Agents We are
More informationSystem types. Distributed systems
System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors
More informationCORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University
CORBA and COM TIP Two practical techniques for object composition X LIU, School of Computing, Napier University CORBA Introduction Common Object Request Broker Architecture (CORBA) is an industry-standard
More informationCORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba
More informationImprovement to the Smart Data Server with SOAP *
Improvement to the Smart Data Server with * WANJUN HUANG, UWE ROTH, CHRISTOPH MEINEL Institute of Telematics Bahnhofstr. 30-32,D-54292, Trier GERMANY {huang,roth,meinel}@ti.fhg.de Abstract: - As a distributed
More informationTowards a Web-centric Legacy System Migration Framework
Towards a Web-centric Legacy System Migration Framework Ying Zou and Kostas Kontogiannis Dept. of Electrical & Computer Engineering University of Waterloo Waterloo, ON, N2L 3G1, Canada {yzou, kostas}@swen.uwaterloo.ca
More informationpresentation DAD Distributed Applications Development Cristian Toma
Lecture 9 S4 - Core Distributed Middleware Programming in JEE presentation DAD Distributed Applications Development Cristian Toma D.I.C.E/D.E.I.C Department of Economic Informatics & Cybernetics www.dice.ase.ro
More informationCHAPTER 7 COM and.net
1 CHAPTER 7 COM and.net Evolution of DCOM Introduction to COM COM clients and servers COM IDL & COM Interfaces COM Threading Models. Marshalling, Custom and standard marshalling. Comparison COM and CORBA.
More informationDistribution and web services
Chair of Software Engineering Carlo A. Furia, Bertrand Meyer Distribution and web services From concurrent to distributed systems Node configuration Multiprocessor Multicomputer Distributed system CPU
More informationDistributed Environments. CORBA, JavaRMI and DCOM
Distributed Environments CORBA, JavaRMI and DCOM Introduction to CORBA Distributed objects A mechanism allowing programs to invoke methods on remote objects Common Object Request Broker middleware - works
More informationDistributed Middleware. Distributed Objects
Distributed Middleware Distributed objects DCOM CORBA EJBs Jini Lecture 25, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy. Lecture 25, page 2 Distributed
More informationA short introduction to Web Services
1 di 5 17/05/2006 15.40 A short introduction to Web Services Prev Chapter Key Concepts Next A short introduction to Web Services Since Web Services are the basis for Grid Services, understanding the Web
More informationRPC flow. 4.3 Remote procedure calls IDL. RPC components. Procedure. Program. sum (j,k) int j,k; {return j+k;} i = sum (3,7); Local procedure call
4.3 Remote procedure calls RPC flow Client process Server process Program i = sum (3,7); Procedure sum (j,k) int j,k; {return j+k; Client stub Program Return Call Unpack Pack result para s Invisible to
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More information(9A05803) WEB SERVICES (ELECTIVE - III)
1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available
More informationCAS 703 Software Design
Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction
More informationChapter 3 Introduction to Distributed Objects
Chapter 3 Introduction to Distributed Objects Distributed object support all of the properties of an object created in compiled object oriented language, namely,data and code encapsulation, polymorphism
More informationSOAP Specification. 3 major parts. SOAP envelope specification. Data encoding rules. RPC conventions
SOAP, UDDI and WSDL SOAP SOAP Specification 3 major parts SOAP envelope specification Defines rules for encapsulating data Method name to invoke Method parameters Return values How to encode error messages
More informationDistributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1
Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Objectives To explain the advantages and disadvantages of different distributed systems architectures
More informationOutline. COM overview. DCOM overview. Comparison DCOM and Corba
DCOM Overview 1 Outline COM overview DCOM overview Comparison DCOM and Corba 2 COM overview Standard for component interoperability binary standard specifies how the component should be represented in
More informationChapter 16. Layering a computing infrastructure
: Chapter 16 by David G. Messerschmitt Layering a computing infrastructure Applications Application components Middleware Operating system Network 2 1 Spanning layer Application Distributed object management
More informationCHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS. Master Thesis. Michael Cífka Visual Development of Software Components
CHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS Master Thesis Michael Cífka Visual Development of Software Components Supervisor: Ing. Petr Tůma, Dr. I would like to thank my supervisor,
More informationToday: Distributed Objects. Distributed Objects
Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.
More informationTools for Distributed Software. Tommi Lukkarinen
Tools for Distributed Software Tommi Lukkarinen Tampere university Department of Computer Science Master s thesis June 2000 1 Abstract Tampere University Department of Computer Science Tommi Lukkarinen:
More informationDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Chapter 09 (version 27th November 2001) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.
More informationA Systematic Approach to Composing Heterogeneous Components
A Systematic Approach to Composing Heterogeneous Components HUANG Gang, MEI Hong, WANG Qian-xiang, YANG Fu-qing Dept of Computer Science & Technology, Peking University, Beijing 100871 {huanggang, meih,
More informationAchieving Architectural Design Concepts with Remote Method Invocations
Achieving Architectural Design Concepts with Remote Method Invocations L.ilteri ÖNEY E1305937 Computer Engineering Department - METU Dr.Semih ÇETN ABSTRACT Motivation to write this article is based on
More informationDistributed systems. Distributed Systems Architectures. System types. Objectives. Distributed system characteristics.
Distributed systems Distributed Systems Architectures Virtually all large computer-based systems are now distributed systems. Information processing is distributed over several computers rather than confined
More informationLimitations of Object-Based Middleware. Components in CORBA. The CORBA Component Model. CORBA Component
Limitations of Object-Based Middleware Object-Oriented programming is a standardised technique, but Lack of defined interfaces between objects It is hard to specify dependencies between objects Internal
More informationIntroduzione ai Web Services
Introduzione ai Web s Claudio Bettini Web Computing Programming with distributed components on the Web: Heterogeneous Distributed Multi-language 1 Web : Definitions Component for Web Programming Self-contained,
More informationCS551 Object Oriented Middleware (II) Outline. Who is the OMG?
CS551 Object Oriented Middleware (II) (Chap. 4 of EDO) Yugi Lee STB #555 (816) 235-5932 yugi@cstp.umkc.edu www.cstp.umkc.edu/~yugi 1 Outline CORBA CORBA Object Model CORBA Interface Definition Language
More informationElectronic Payment Systems (1) E-cash
Electronic Payment Systems (1) Payment systems based on direct payment between customer and merchant. a) Paying in cash. b) Using a check. c) Using a credit card. Lecture 24, page 1 E-cash The principle
More informationSimple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer
Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Minimal List Common Syntax is provided by XML To allow remote sites to interact with each other: 1. A common
More informationOverview. Communication types and role of Middleware Remote Procedure Call (RPC) Message Oriented Communication Multicasting 2/36
Communication address calls class client communication declarations implementations interface java language littleendian machine message method multicast network object operations parameters passing procedure
More informationCloud Computing Chapter 2
Cloud Computing Chapter 2 1/17/2012 Agenda Composability Infrastructure Platforms Virtual Appliances Communication Protocol Applications Connecting to Cloud Composability Applications build in the cloud
More informationDistributed Systems. Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1
Distributed Systems Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1 Service Oriented Architectures (SOA) A SOA defines, how services are
More informationLecture 16. What is COM? Principles of COM. COM Design Principles. Example (UML Diagram) Microsoft IDL (MIDL) COM/DCOM February 23, 2005
What is? Lecture 16 /D February 23, 2005 = Common Model. Platform-independent, distributed OO system for client-server implementations. objects can be created in a variety of languages (like CORBA). Not
More informationService-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA) SOA is a software architecture in which reusable services are deployed into application servers and then consumed by clients in different applications or business processes.
More informationWeb Services Development for IBM WebSphere Application Server V7.0
000-371 Web Services Development for IBM WebSphere Application Server V7.0 Version 3.1 QUESTION NO: 1 Refer to the message in the exhibit. Replace the??? in the message with the appropriate namespace.
More informationDistributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.
Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA
More informationGöttingen, Introduction to Web Services
Introduction to Web Services Content What are web services? Why Web services Web services architecture Web services stack SOAP WSDL UDDI Conclusion Definition A simple definition: a Web Service is an application
More informationKINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR (ODD SEMESTER) QUESTION BANK
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR 2011 2012(ODD SEMESTER) QUESTION BANK SUBJECT CODE / NAME: IT1402-MIDDLEWARE TECHNOLOGIES YEAR/SEM : IV / VII UNIT
More informationA Framework Supporting Quality of Service for SOA-based Applications
A Framework Supporting Quality of Service for SOA-based Applications Phung Huu Phu, Dae Seung Yoo, and Myeongjae Yi School of Computer Engineering and Information Technology University of Ulsan, Republic
More informationConstraint-based Generation of Connectors
Constraint-based Generation of Connectors Tomas Bures Charles University, Faculty of Mathematics and Physics, Prague, Czech Republic Abstract. In this paper we discuss the a typical use-case of connector
More informationGoal: Offer practical information to help the architecture evaluation of an SOA system. Evaluating a Service-Oriented Architecture
Evaluating a Service-Oriented Architecture Paulo Merson, SEI with Phil Bianco, SEI Rick Kotermanski, Summa Technologies May 2007 Goal: Offer practical information to help the architecture evaluation of
More informationREQUIREMENTS AND A FRAMEWORK FOR BROKER BASED INTEGRATION IN SERVICE-ORIENTED ARCHITECTURE
Tuomas Vanhanen REQUIREMENTS AND A FRAMEWORK FOR BROKER BASED INTEGRATION IN SERVICE-ORIENTED ARCHITECTURE Master s Thesis 4.12.2003 University of Jyväskylä Department of Computer Science and Information
More informationDistributed Objects and Remote Invocation. Programming Models for Distributed Applications
Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure
More informationProgramming Web Services in Java
Programming Web Services in Java Description Audience This course teaches students how to program Web Services in Java, including using SOAP, WSDL and UDDI. Developers and other people interested in learning
More informationSUN. Java Platform Enterprise Edition 6 Web Services Developer Certified Professional
SUN 311-232 Java Platform Enterprise Edition 6 Web Services Developer Certified Professional Download Full Version : http://killexams.com/pass4sure/exam-detail/311-232 QUESTION: 109 What are three best
More informationMohsin Qasim Syed Abbas Ali
2005-5-18 Final version Table of Content 1 -Introduction to CORBA...3 1.1 Overview...3 1.2 Why is CORBA important in a networked environment?... 4 1.3 HOW DOES CORBA WORKS?...4 1.4 CORBA Architecture...
More informationDistributed Object-based Systems CORBA
CprE 450/550x Distributed Systems and Middleware Distributed Object-based Systems CORBA Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu March 30, 2004 2 Readings for Today s Lecture!
More informationWSDL Interface of Services for Distributed Search in Databases
WSDL Interface of s for Distributed Search in s Elena Ivanova Abstract: oriented architecture and two layers model of a service are described. WSDL technology is applied to implement a network interface
More informationAdvanced Lectures on knowledge Engineering
TI-25 Advanced Lectures on knowledge Engineering Client-Server & Distributed Objects Platform Department of Information & Computer Sciences, Saitama University B.H. Far (far@cit.ics.saitama-u.ac.jp) http://www.cit.ics.saitama-u.ac.jp/~far/lectures/ke2/ke2-06/
More informationImplementation of GDMO to IDL Translator and CORBA/CMIP Gateway for TMN/CORBA Integration
Implementation of GDMO to IDL Translator and CORBA/CMIP Gateway for TMN/CORBA Integration Seok-Heon Chae, Jong-Wook Baek, Moon-Sang Jeong, Jong -Tae Park School of Electronic and Electrical Engineering,
More informationLesson 3 SOAP message structure
Lesson 3 SOAP message structure Service Oriented Architectures Security Module 1 - Basic technologies Unit 2 SOAP Ernesto Damiani Università di Milano SOAP structure (1) SOAP message = SOAP envelope Envelope
More informationModularity. Object Request Broker. Object Request Broker. These slides are based on Wikipedia and other Web sources (URLs given)
These slides are based on Wikipedia and other Web sources (URLs given) Web Service Distributed Architectures Object Request Broker Software Engineering function Andreas Zeller Saarland University function
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationOO-Middleware. Computer Networking 2 DVGC02 Stefan Alfredsson. (slides inspired by Annika Wennström, Sören Torstensson)
OO-Middleware Computer Networking 2 DVGC02 Stefan Alfredsson (slides inspired by Annika Wennström, Sören Torstensson) Object oriented middleware Extendend mechanism for objects Objects consist of data
More informationWHITESTEIN. Agents in a J2EE World. Technologies. Stefan Brantschen. All rights reserved.
WHITESTEIN Technologies 1 Agents in a J2EE World Stefan Brantschen ttt.info.j2ee v1.6 2002-02-10 SBR Copyright 2002 by Whitestein Technologies AG, Switzerland Goal and Outline Goal Present how J2EE EJB
More informationComputational Web Portals. Tomasz Haupt Mississippi State University
Computational Web Portals Tomasz Haupt Mississippi State University What is a portal? Is it a web page? There is something going on behind the scene! Synopsis URL TCP/IP SSL HTTP HTTPS PKI Kerberos HTML
More informationWhat is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform.
CORBA What is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform. It includes: an object-oriented Remote Procedure Call (RPC) mechanism object
More informationAgent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Distributed and Agent Systems Prof. Agostino Poggi What is CORBA? CORBA (Common Object Request
More informationOutline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4
EEC-681/781 Distributed Computing Systems Lecture 4 Department of Electrical and Computer Engineering Cleveland State University wenbing@ieee.org Outline Inter-process communications Computer networks
More informationPROFESSOR: DR.JALILI BY: MAHDI ESHAGHI
PROFESSOR: DR.JALILI BY: MAHDI ESHAGHI 1 2 Overview Distributed OZ Java RMI CORBA IDL IDL VS C++ CORBA VS RMI 3 Distributed OZ Oz Language Multi paradigm language, strong support for compositionality and
More informationBEAAquaLogic. Service Bus. JPD Transport User Guide
BEAAquaLogic Service Bus JPD Transport User Guide Version: 3.0 Revised: March 2008 Contents Using the JPD Transport WLI Business Process......................................................2 Key Features.............................................................2
More informationWeb service design. every Web service can be associated with:
Web Services Web services provide the potential of fulfilling SOA requirements, but they need to be intentionally designed to do so. Web services framework is flexible and adaptable. Web services can be
More informationVerteilte Systeme (Distributed Systems)
Verteilte Systeme (Distributed Systems) Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ VerteilteSysteme/ Lecture 3: Communication (Part 2) Remote Procedure
More informationModel-Driven QoS Provisioning Techniques for CCM DRE Systems
Model-Driven QoS Provisioning Techniques for CCM DRE Systems Stoyan Paunov, Gan Deng, Douglas C. Schmidt, and Anirudha Gokhale ISIS, Vanderbilt University Motivation for QoS-enabled Middleware Trends!
More informationRPC. Remote Procedure Calls. Robert Grimm New York University
RPC Remote Procedure Calls Robert Grimm New York University Assignments! You need (more) time for interoperability testing!! Your server should be running by midnight Sunday! Assignment 3 test case posted!
More informationChapter 4 Communication
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI
More informationAutomatic Code Generation for Non-Functional Aspects in the CORBALC Component Model
Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model Diego Sevilla 1, José M. García 1, Antonio Gómez 2 1 Department of Computer Engineering 2 Department of Information and
More informationChapter 4. Internet Applications
Chapter 4 Internet Application Protocols 1 Internet Applications! Domain Name System! Electronic mail! Remote login! File transfer! World Wide Web! All use client-server model 2 Names! Internet communication
More informationWeb Services Invocation Framework (WSIF)
Web Services Invocation Framework (WSIF) Matthew J. Duftler, Nirmal K. Mukhi, Aleksander Slominski and Sanjiva Weerawarana IBM T.J. Watson Research Center {e-mail: duftler, nmukhi, aslom, sanjiva @us.ibm.com
More information(D)COM Microsoft s response to CORBA. Alessandro RISSO - PS/CO
(D)COM Microsoft s response to CORBA Alessandro RISSO - PS/CO Talk Outline DCOM What is DCOM? COM Components COM Library Transport Protocols, Security & Platforms Availability Services Based on DCOM DCOM
More informationDYNAMIC INVOCATION OF WEB SERVICES
, pp.-78-82 Available online at http://www.bioinfo.in/contents.php?id=33 DYNAMIC INVOCATION OF WEB SERVICES TERE G.M. 1 *, JADHAV B.T. 2 AND MUDHOLKAR R.R. 3 1Department of Computer Science, Shivaji University,
More informationRealisation of SOA using Web Services. Adomas Svirskas Vilnius University December 2005
Realisation of SOA using Web Services Adomas Svirskas Vilnius University December 2005 Agenda SOA Realisation Web Services Web Services Core Technologies SOA and Web Services [1] SOA is a way of organising
More informationInternational Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 6, Nov-Dec 2015
RESEARCH ARTICLE OPEN ACCESS Middleware Interoperability using SOA for Enterprise Business Application T Sathis Kumar Assistant Professor Department of Computer Science and Engineering Saranathan College
More informationCapeConnect Three. Concepts
CapeConnect Three Concepts CapeConnect Three Concepts (October 2001) Copyright 1999 2001 Cape Clear Software Ltd., including this documentation, all demonstrations, and all software. All rights reserved.
More informationINTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV
INTRODUCTION TO Object Oriented Systems 1 CHAPTER 1 Introduction to Object Oriented Systems Preview of Object-orientation. Concept of distributed object systems, Reasons to distribute for centralized objects.
More informationOn-Line Monitoring of Multi-Area Power Systems in Distributed Environment
SERBIAN JOURNAL OF ELECTRICAL ENGINEERING Vol. 3, No. 1, June 2006, 89-101 On-Line Monitoring of Multi-Area Power Systems in Distributed Environment Ramadoss Ramesh 1, Velimuthu Ramachandran 2 Abstract:
More informationCS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [RPC & DISTRIBUTED OBJECTS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey XDR Standard serialization
More information