Interoperability is the buzzword in the modern computing world because so many disparate systems from different vendors are being used. In the absence of compatible systems, the market of integration products is ever growing. There are quite a few integration solutions available in the market for "gluing" together the two main distributed computing technologies available today: Component Object Model (COM) and Enterprise JavaBeans (EJB). These integration solutions are essentially "bridge" software. WebLogic Server provides its own bridging solution to enable applications deployed on WebLogic Server to seamlessly access COM objects. This bridging solution is the jCOM software bridge. The jCOM bridge allows Java applications deployed in WebLogic Server bi-directional access to COM components. Bi-directional access is the key point here. Most bridge software provides unidirectional access because it is easier to implement it. Bi-directional bridge software is much more difficult to implement because it has to support the protocols on both sides. jCOM supports bi-directional access to COM components. This implies that the jCOM bridge software can translate a call from a Java application or an EJB component to a COM component. This is the first way of communication. The second way of communication is to enable a COM component to access Java applications or EJB components as if they were COM components. Hence, jCOM bridge software supports both the RMI/IIOP and DCOM protocols. DCOM is the distributed computing support for COM components. Now, take a quick look at the key features of jCOM bridge software:
Before you proceed with the discussion of the tools available with the jCOM bridge software, you should study some useful concepts and terminologies that will help you understand jCOM better. BindingBinding is the mechanism of associating method/function call signatures with the actual implemented code. For example, when you use database driver libraries for accessing a database, you need to link the driver libraries when compiling and linking your application to generate the final executable file. It is at link time that the actual database functionality in the driver libraries is "bound" to the database calls that you write in your application code. There are two ways to perform binding in an application:
vtableA vtable is a "virtual table" of pointers to function calls whose functionality is provided by an object, for example, a library object. The vtable is always required in static, that is, early binding. This is normally used in Visual Basic and Visual C++ applications when accessing COM components. For example, if you wanted to automate Microsoft Word using early binding, you would add a reference to the "Microsoft Word 8.0 Object Library" (MSWORD9.OLB file for Office 2000). IDispatch InterfaceThe IDispatch interface is used during late binding when the information about the exact function being called is not known at link time (static binding time). The IDispatch interface serves as a mechanism to find information, such as data types, parameters, and so on, about the object or function at runtime, which is then used to invoke the function of the object. Now that you are clear on these concepts regarding accessing COM components, proceed with your study of jCOM. |