java类库详细讲解
源代码在线查看: defineremote.html
Defining and Exporting a Portable Remote Object
(Java Developers Almanac Example)
BODY CODE {font-family: Courier, Monospace; font-size: 11pt} TABLE, BODY {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt} PRE {font-family: Courier, Monospace; font-size: 10pt} H3 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11pt} A.eglink {text-decoration: none} A:hover.eglink {text-decoration: underline} -->
The Java Developers Almanac 1.4
Order this book from Amazon.
Home
>
List of Packages
>
javax.rmi
[3 examples]
e504.
Defining and Exporting a Portable Remote Object
1. Define the remote interface.
import java.rmi.*;
public interface RObject extends Remote {
void aMethod() throws RemoteException;
}
2. Define the portable remote object implementation.
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
public class RObjectImpl extends UnicastRemoteObject implements RObject {
public RObjectImpl() throws RemoteException {
super();
}
// All remote methods must throw RemoteException
public void aMethod() throws RemoteException {
}
}
3. Compile the remote object implementation.
> javac RObject.java RObjectImpl.java
4. Generate the skeletons and stubs.
Using RMI over IIOP
> rmic -iiop RObjectImpl
Using RMI over JRMP
> rmic RObjectImpl
5. Create an instance of the remote object and bind it to a name service.
import javax.naming.*;
import java.rmi.RemoteException;
// JRMP: name = "rmi://localhost/RObjectServer";
// IIOP: name = "iiop://localhost/RObjectServer";
try {
RObject robj = new RObjectImpl();
new InitialContext().bind(name, robj);
} catch (NamingException e) {
} catch (RemoteException e) {
}
Related Examples
e503.
Starting the Name Server
e505.
Looking Up a Portable Remote Object and Invoking a Method
© 2002 Addison-Wesley.