Relation of this effort to Java RMI
Our stated goals and those behind the RMI package are more or less identical. Thus, it is not surprising that from the outside, the structure of the resulting distributed applications looks more or less identical to that of the structure used by the RMI package.
The differences lie in the implementation. The primary difference is that the complete communication infrastructure is contained within the client (CI) implementation and server (SI) implementation classes. In Java RMI the communications structure is broken down into several components. (As described in  this was in an effort to provide the capablity for having differnt mechanisms for object communications).
No extra security measures are invoked in the NetApp wrappers implementation. One inherits the standard Java security measures.
Multiple instances of the server class are used to service multiple clients. Also, there is no registry mechanism; the ServerManager dynamically loads classes by name.
All methods of the remote interface class must throw RMIExceptions. In the NetApp wrappers implementation this is not a necessity. (If a server class specifies that
NetAppexceptions are thrown, then the code creator will cause any communication code to throw the excpetion rather than print it to system.out.)
|RMI has a specific set of security procedures||Net App wrappers has the default Java security. In particular the remote class has the privilidges held by the user who started the ServerManger possesses. If one uses callbacks, then the server acquires the privalges that the client posseses; e.g. if it is a java Application, then it can modify ones user files.|
|RMI has point-to-point applications, with only a single instance of server classes running.||NetApp wrappers, point-to-point communication. Multiple instance server classes.|
|RMI requires that the remote class be "running"||NetApp wrappers invokes a remote class dynamically. Once the remote connection is terminated, then standard Java garbage collection takes care of removing it.|