In this mode J-Integra® uses a pure Java implementation of the DCOM protocol to talk to COM components. No native code is required (i.e. no DLLs). You must run in DCOM mode if you are running J-Integra® on a non-Windows platform.
* In DCOM mode, the DCOM protocol is always used for communication between the Java and COM components. It does not matter if the Java application and COM component both reside locally or if they are located on separate machines. When the client and server components are both COM-based the DCOM protocol is only used for communication when the components reside on different machines. If both components reside on the same machine, the standard COM protocol is used instead.
To run J-Integra® in DCOM mode, you don't have to do anything! DCOM mode is the default mode for J-Integra®.
In this mode J-Integra® uses native code to talk to COM components. The jintegra.jar runtime talks to a J-Integra® DLL called ntvinv.dll (which is located in the jintegra\bin directory). In turn, ntvinv makes calls to COM components using the standard OLE automation DLLs that come with Windows.
* This means that when the COM component is located locally, DCOM is not being used for communication. DCOM ("Distributed" COM) is only used when the COM component is on a remote machine. When both client and server are local, the regular COM protocol is used for client/server communication instead.
* Because native mode makes use of standard Windows DLLs, it can only be used when J-Integra® is running on a Windows platform.
To run J-Integra® in native mode, you must specify the J-Integra® property JINTEGRA_NATIVE_MODE when the JVM is started up. You can set this property by specifying it on the command line when you launch the JVM or you can set it in your Java code.
Command Line: java -DJINTEGRA_NATIVE_MODE [MyJavaMainClass]
Java Code: System.setProperty("JINTEGRA_NATIVE_MODE", "");
If Java objects and COM components are all on local machine, native mode runs faster than DCOM mode. If Java objects and COM components are on different computers, the performance difference is trivial.
J-Integra® automatically runs in native mode if an ActiveX Control is embedded in a Java frame.
For more information on native mode, please see Introduction to J-Integra® Native Mode.
You can use the code snippet below to determine which mode J-Integra® is running in.
If native mode is in use, you will also see the following line printed in the jintegra.log file...