Features

How it works

JCOBridge does not use any custom communication channel: with JCOBridge both .NET and JVM live in the same process and both engines still remains insulated. Each engine runs its own native language code and the best still be obtained within each platform. The communication, between .NET and JVM, is made using a thin bidirectional communication layer based on JNI: the translation layer is smooth and does not need any data marshalling, proxies, custom communication channels. JCOBridge use pointer references to objects and classes: the weight of this layer does not impact on the overall performance.


Cyber-safe by design

.NET and JVM code are executed within the same process. This avoids, by design, any cyber-security issue related to JCOBridge. Competing products based on custom communication channels introduce an attack surface within your infrastructure usable from the hacker.


Fast by design

JCOBridge was designed to reach the maximum speed. JCOBridge uses only JNI and any object, except for native types, still remains in its context: any other possible communication mechanism is intrinsically slower. Marshalling, proxies, network, shared memory reduces the communication speed.


Footprint

JCOBridge is a lightweight solution. It has a very little footprint and it is the best solution for any environment. Particularly it is the best solution for embedded environment.


Field proven

Built on top of the field proven DLR plugin available in the Sinapse platform (https://www.sinapsesystem.com), JCOBridge guarantees the best performance in JVM and CLR worlds integration.


Features comparison

JVM

CLR

  • Available for .NET (Framework/Core) and Java SE 8+ on Windows and Linux (other platforms available on demand)
  • Retrieve and access CLR/.NET Type
  • Instantiate and access CLR/.NET objects
  • Invoke instance and static methods
  • Get/Set instance and static properties
  • Get/Set instance and static fields
  • Manage and interact with Delegates
  • Subscribe/Unsubscribe events
  • EmbeddedWPF controls within AWT/Swing window
  • Embedded WinForms controls into AWT/Swing window
  • Embedded complex .NET Graphical user interfaces objects into AWT/Swing window
  • WPF/WinForms User Interface Controls, properties and events management without effort
  • Available for .NET (Framework/Core) and Java SE 8+ on Windows and Linux (other platforms available on demand)
  • Retrieve and access JVM class
  • Instantiate and access JVM objects
  • Invoke instance and static methods
  • Get/Set instance and static fields
  • Use dynamic .NET features to write code in a seamless way as it is done in Java Language: look at these examples to see it in action and see the overview on differences between direct and dynamic approaches
  • Use specific interfaces to direct manages methods and fields
  • Launch, control and receive events from Java UI based on SWT/AWT/Swing
  • Embedded, control and receive events from Java UI (AWT/Swing/SWT) into WPF/WinForms (from version 2.2)