CBJ provides a distributed programming model that is as close as possible to a non-distributed one aimed at making it as easy as possible for a programmer to develop distributed Java applications. CBJ enables remote access to any existing class and object passing it parameters and getting return values, either by value or by reference, and without changing that any class signature. This way, the programmer is released from changing existing classes or wrapping them with classes. CBJ also makes it very easy to incorporate a high performance client GUI component into a Java server application. Namely, their methods can translate parameters and return value references from remote to local, and vice versa.
Proxies can assume their master object type.
CBJ API can be used in unsigned applets. A utility to start Java remote applications. User defined remote access control. User defined socket factory. An API to check live connections.