The Jini reference implementation relies heavily on RMI. So in effect, it inherits all the benefits of the RMI infrastructure. Although it is not a requirement to use RMI with Jini, you will lose many of the "out-of-the-box" benefitsa distributed object model supporting code mobility for one. RMI provides:
Automatic activation of services and service restoration
Resource conservation by only activating a service when requested
Support for activation groups that share a single JVM
Automatic generation of proxy objects for remote communication
There might be cases where the target platform or device in which a Jini service has been implemented is resource-constrained and unable to fully participate in an RMI environment. There are alternative architectures available, such as the surrogate architecture that will be covered later in the book. For now, we need to demonstrate the role RMI plays in a typical Jini network. With the background presented on RMI, you are ready to move into the core Jini services, which are the subjects of the next several chapters.