Search code examples
javarmi

When is the skeleton object created in RMI?


In books, I read that when we compile implementation class with rmic, it creates two objects: stub and skeleton. But when I compile server side implementation class it only creates a stub object file. The code is:

import java.rmi.*;
import java.rmi.server.*;

public class ServerImp extends UnicastRemoteObject implements testRmi
{
    ServerImp() throws RemoteException
    {
    }

    public void getText(String gt) throws RemoteException
    {
        System.out.println(gt);
    }
}

Can somebody tell me when the skeleton file is created?


Solution

  • Since rmic 1.2 onwards, Java doesn't generate skeleton class any more. New JRMP protocol supported for RMI has got rid of the use of skeleton files.

    A skeleton for a remote object is a JRMP protocol server-side entity that has a method that dispatches calls to the actual remote object implementation.