TeamDev Ltd. Home Page

ComfyJ run-time provides bi-directional Java-COM bridge so you can call COM objects from your Java code, and COM code can call your Java.


COM-to-Java Integration

This facet of ComfyJ allows you to integrate your Java application with any COM/OLE/OCX/ActiveX library of the Windows platform.

COM Interfaces & Data Types Wrappers

They allow working with COM types and interfaces likewise ordinary Java objects. For instance, you can use IUnknown, IClassFactory, IDispatch as usual Java interfaces and Variant (VARIANT), BStr (BSTR), SafeArray etc. as usual Java types.

VTBL & COM Automation

ComfyJ allows to invoke methods of a COM object via its function indexes in VTBL (Virtual Method Table) or by their names using Automation approach. Also, Automation allows getting and setting properties of a COM object, including indexed and named ones.

Embedding of OLE/OCX/ActiveX Components to Swing

ComfyJ provides the OleContainer Swing component which allows you to:

  • Use any visual COM component (OCX/ActiveX) in Java Swing UI. Using this functionality you can embed various ActiveX applications, such as Internet Explorer, Acrobat Reader, Microsoft Office as well as various media components such as Windows MediaPlayer, DVD player, QuickTime, ShockwaveFlash, etc.
  • Create an embedded object using ProgID, CLSID, or from a document file. Also, there is an ability to insert a COM object (which implements IOleObject COM interface) into container.
  • Save and load an embedded OleObject to or from a file in a special binary format.
Buy online in few steps
Questions by email
ComfyJ Bi-directional Java-COM Bridge

CodeGenerator Utility

With this bundled application, you can generate Java COM wrappers for COM components or COM Type Libraries. These generated classes allow you to work with COM objects just like with usual Java objects. Moreover, this application can compile the generated classes and pack them into a JAR file, if needed.

COM Memory Management

All COM and other native resources will be garbage-collected automatically or you can release them if required by the application logic.

Support for Multiple Threading Models

ComfyJ provides a set of different concurrency models which you can use for initializing COM integration in your Java application.

Handling of COM Events

ComfyJ provides standard COM technique for creating and advising COM event handlers to a COM object.

DCOM Support

ComfyJ allows you to create a COM object on a remote server.



Java-to-COM Integration

This part of ComfyJ provides the ability to create Java COM servers purely in Java. In other words, a designed Java COM server can be exposed as COM objects to other COM applications without writing a line of a native code.

Development of Java COM Servers

To simplify creation of custom Java COM servers ComfyJ provides the base classes such as IUnknownServer and IDispatchServer, so any custom Java COM objects can inherit these classes depending on application requirements. Such Java COM servers can implement as many COM interfaces as required. It can be standard COM interfaces as well as those which were generated by Code Generator application of ComfyJ or custom ones.

Registration of Java COM Servers

ComfyJ also provides convenient ways for registering of created Java COM servers. Such registration can be performed at run time, for example for COM event handlers, or in COM Registry using a bundled ServerManager application. Also, there is the ability to register Java COM servers at runtime without using ServerManager application at all. Such registered Java COM servers can be used by other COM applications.