Table below shows the history of Javonet versions:
|1.4 HF34 MINOR
||Version 1.4 Hot Fix 34 includes:
- Added support to retrieve mixed arrays of value and complex types as method result.
- Added revalidate method on NControlContainer to refresh the .NET user control layout after programatical change in Java layout.
- Added support to retrieve value type arrays populate within the .NET method with “out” argument.
- Increase performance of get/set properties by implementing hard-wired pointers to .NET side.
- Added caching on indexed fields operations to increase performance.
|1.4 HF29 MINOR
||Version 1.4 Hot Fix 29 includes:
- Fix for using custom license directory when running Javonet with Java 1.6
- Update to hardware dongles allowing to issue new hardware keys without updating pre-activated license key
- Extended mechanism for loading .NET dlls from byte array to support libraries with dependencies in other DLL files
|1.4 HF25 MINOR
||Version 1.4 Hot Fix 25 includes:
- Added support for hardware USB dongles to allow easy transition of Javonet enabled software and Javonet licenses between different machines or during machine upgrade.
- Added support for multi-machine license file to allow using single offline pre-activated license file on multiple machines or across multiple hardware USB dongles.
- Added possibility to add reference to .NET DLL files using byte arrays instead of local path or GAC name.
|1.4 HF24 MINOR
||Version 1.4 Hot Fix 24 includes:
- Enabled calling methods by passing arguments of types that inherit from types expected by the method. Auto method resolving mechanism supports ref, outs, implicit and explicit casts and value-types to System.Object mapping
|1.4 HF23 MINOR
||Version 1.4 Hot Fix 23 includes:
- Improved performance of invoking methods with “enum” arguments.
- Improved performance of using enums in setters.
- Extended methods resolving mechanism for static methods to detect target method when there are nulls passed for Nullable enum and array arguments
|1.4 HF18 MINOR
||Version 1.4 Hot Fix 18 includes:
- Added support for scalable licensing models
|1.4 HF17 MINOR
||Version 1.4 Hot Fix 17 includes:
- Improved the error message when there is no matching method found. The error message includes the arguments detected based on user input and more detailed expected method signature.
- Added support to properly choose the method when there is only one overload with matching number of arguments and all passed arguments are null of unknown type.
- Bugfix: Fixed Javonet activation with proxy servers.
- Bugfix: Fixed support for null arguments without using NNull object.
- Modified version naming convention to separate library version with dash instead of underscore.
- Added beta release of support for events and callbacks/delegates returning results
- Added new method on Javonet object “setLicenseDirectory” to specify alternative path for storing Javonet license files
- Added support for returning modified .NET reference objects as byref invocation results. Now developers can invoke .NET methods passing .NET object as by ref argument to be modified on .NET side (i.e. DateTime)
|1.4 HF15 MINOR
||Version 1.4 Hot Fix 15 includes:
- Bugfix: Improved detection of .NET WinForms user controls inheriting from ScrollableControl and Control classes for embedding in Java interface.
|1.4 HF14 MAJOR
||Version 1.4 Hot Fix 14 includes:
- Added new class NControlContainer which allows embedding .NET WPF or WinForms user controls in Java AWT, Swing and JavaFX interface.
- Added possibility to pass instances of NEnum class as method arguments with “ref” and “out” keywords using NRef and NOut objects.
- Added new object NDelegate which allows passing Java method as delegate argument to .NET methods or setting Java methods on fields and properties of “delegate” type. When .NET side calls the delegate the call is routed automatically to Java side and provided Java implementation is executed. Currently supports delegates with or without arguments and returning “void”.
- Update NObject API by restricting generic type “T” on method “setIndex” to classes derived from NObject. Fixed the return value of “setIndex” method to be the object on which the method was called to allow methods invocation chaining.
|1.4 HF10 MINOR
||Version 1.4 Hot Fix 10 includes:
- IMPORTANT: Modified OEM license activation process.
|1.4 HF9 IMPORTANT
||Version 1.4 Hot Fix 9 includes:
- IMPORTANT: Fix for issue with initializing generic types of the same base type in sequence.
- Added new “boolean isActivate()” method on “Javonet” static class to allow developers verifying if Javonet has not been activated already by another thread or part of code.
|1.4 HF4 CRITICAL
||Version 1.4 Hot Fix 4 includes:
- CRITICAL: Fix for issues with type loader while initializing new types simultaneously from several threads. In rare cases Javonet engine could crash.
- Improved error message for exception while initializing .NET objects thrown by constructor.
||Version 1.4 Hot Fix 3 includes:
- Fix for “Key already exists” issue within methods delegates caching mechanism. Bug occurred rarely in multithreaded environments.
||Version 1.4 includes:
- Extreme performance improvement. Time per call decreased to 0,000009s
- Threads management improved. Single logical thread in Java for each .NET logical thread.
- Threads lifecycles constraint between Java and .NET
- Modified data conversion mechanism
- Introduced fully binary protocol
- Extended generics support: added generic objects initialization with any number of generic types
- Added support for invoking methods in instances of MarshalledByRefObjects
- .NET 4.5 and Java 8 compatibility added
- Merged all .NET versions in single JAR file
- Added welcome message method on Javonet class to allow tracing javonet configuration in log files
- Added automated detection of missing prerequisites and proper meanigful messages in console output
- Added auto-resolving for ENUM types namespace
- Garbage collector performance improved
- Added support for user controlled bulk garbage collector invocations
||For details about previous versions please contact our technical support.