ActiveJ Release Notes


ActiveJ v4.0-beta1 was released Dec 24, 2020 (see on Maven). This release included major refactoring of exceptions, and high-performance Redis client.


ActiveJ v3.0.1 was released Nov 30, 2020 (see on Maven). This release included a minor bug fix for ActiveSerializer.


ActiveJ v3.0 was released Nov 12, 2020 (see on Maven). This release included numerous changes and improvements:

  • ActiveCodegen API for constructors and super-constructors became more streamlined. Records, RecordScheme classes were improved. Introduced RecordProjection class. Also, now you can set the bytecode save directory using system property (via ApplicationSettings). We’ve also added the ability to throw custom exceptions via Expressions.
  • ActiveSerializer. StreamInput and StreamOutput classes were introduced as an alternative to Java’s DataInputStream and DataOutputStream. StreamCodecFactory was introduced alongside StreamCodecRegistry and StreamCodecs classes. SerializerBuilder was greatly improved. Also minor refactoring and improvements were performed.
  • ActiveFS - file durability options were added to LocalActiveFs, LocalBlockingFs. We’ve added LocalBlockingFs and simplified LocalActiveFs. There also were minor bug fixes and refactoring performed.
  • ActiveJ Datastream. We’ve reworked and simplified ChannelDeserializer and ChannelSerializer classes, replacing explicit maximum message size with adaptive message size of up to 256MB (as opposed to the 2MB limit in ActiveJ v2.0).
  • ActiveJ HTTP - HTTP connections classes were made public and are now added to requests (on servers) and to responses (on clients). HTTP version was added to HTTP messages. HTTP inspectors were reworked.
  • ActiveRPC, ActiveJ CSP, Net, and Cube got minor improvements and bug fixes. This release also introduces FileStateManager in the util-state package.


ActiveJ v2.2 was released Sep 11, 2020 (see on Maven). This release included major fixes and improvements of JMX module start up, which greatly sped up Launchers. Now all the HTTP examples launch lightning-fast! The release also included reworks of recycling of iterators, restoring compilation for JDK 8, and other minor bug fixes. We’ve also added a new ActiveFs example for deploying cluster file storage.


ActiveJ v2.1 was released Sep 4, 2020 (see on Maven). This release included minor bug fixes and introduced support of WebSockets communication protocol. You can explore a basic WebSocket Ping-Pong client-server use case here


ActiveJ v2.0 was released Aug 18, 2020 (see on Maven). The release included a list of important improvements and optimizations.

  • ActiveFs library was affected the most. ActiveFs client HTTP and TCP implementations got a full support of append and upload operations. A support of concurrent uploads with last-write-wins semantics was added. There also were some important optimizations and minor bug fixes. For your convenience, we’ve added a Javadoc to each of the ActiveFs implementations.

  • ActiveInject, Active Datastream, ActiveJ Eventloop, and ActiveJ Promise components got minor improvements and optimizations

  • ActiveCodegen got a full support of static fields and class initializers

  • ActiveSerializer got a support of cyclic references

Most of the other ActiveJ components were slightly affected and optimized by the aforementioned improvements.