You develop an RMI-P4 application by first defining and implementing a remote object (that is, develop the server part of the application) and then implementing a client that calls remote methods of the remote object (that is, develop the client part of the application). If you do not want to use dynamic stubs and skeletons, you also have to generate them against the implementation class of the remote object.
The process of developing an RMI-P4 application consists of the following activities:
...
2. Implement the remote interface.
3. Generate stubs and skeletons using the RMIC tool.
4. Implement a client that calls remote methods.