The Microsoft™ Component Object Model (COM) is a component software architecture
that allows developers to partition an application into multiple components that can be
developed and installed independently of each other. COM is the underlying
architecture that forms the foundation for higher-level software services, like those
provided by OLE (Object Linking and Embedding). OLE services span various aspects
of component software, including compound documents, custom controls, interapplication
scripting, data transfer, and other software interactions. Using COM allows
software objects to be reused for a variety of applications. Because of its binary
standard, COM allows any two components to communicate regardless of the language
in which they were written.
The Microsoft Distributed Component Object Model (DCOM) is an extension of COM, and
supports communication among objects residing on different computers; LANs,
WANs, and the Internet. With DCOM, these software objects can be reused over a
distributed Environment.
DCOM Architecture
The following figure depicts the architecture of Distributed COM
Development Information
Features
Outbound Communication - should be able to invoke an operation exposed by COM component
Inbound Communication - should be able to register for COM Events and listen to those events
Transactions - participate in Global transactions offered by MTS
Security - invoke operations using different types of security levels present in COM world
JavaOne Milestone
As a consumer, consume simple service exposed by COM Component.
WSDL Extensibility Elements
The following is the description of the DCOM Binding Component extensibility elements:
Extensiblity Element
Description
UUID
16 bit unique identifier of COM component
methodname
name of the operation to be invoked
Domain
domain name\ipaddress in which the COM component is hosted
Server
server name\ipaddress in which the COM component is hosted
Username
username to invoke the COM component
Password
password to invoke the COM component
DCOM Demos
The following demo shows the simple usage of DCOM BC, here we request a echo method which returns the same value which we send as input.
J-Interop: DCOMBC depends on j-Interop to interface with COM servers. j-Interop(open source), implements DCOM wire protocol and is written purely(void of native code) in Java hence can be used from all platforms so supported.