Throwing an Exception from a Remote Method
1. Define the remote interface.
2. Define the remote object implementation.
3. Compile the remote object implementation.
4. Generate the skeletons and stubs.
5. Create an instance of the remote object and bind it to the RMI registry.
6. Look up the remote object, invoke the method, and catch the exception.
import java.rmi.*;
public interface RObject extends Remote {
void aMethod() throws RemoteException;
}
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
public class RObjectImpl extends UnicastRemoteObject implements RObject {
public RObjectImpl() throws RemoteException {
super();
}
public void aMethod() throws RemoteException {
// The actual exception must be wrapped in a RemoteException
throw new RemoteException("message", new FileNotFoundException("message"));
}
}
> javac RObject.java RObjectImpl.java
> rmic RObjectImpl
try {
RObject robj = new RObjectImpl();
Naming.rebind("//localhost/RObjectServer", robj);
} catch (MalformedURLException e) {
} catch (UnknownHostException e) {
} catch (RemoteException e) {
}
try {
// Look up the remote object.
RObject robj = (RObject) Naming.lookup("//localhost/RObjectServer");
// Invoke the method.
robj.aMethod();
} catch (MalformedURLException e) {
} catch (UnknownHostException e) {
} catch (NotBoundException e) {
} catch (RemoteException e) {
// Get the actual exception that was thrown.
Throwable realException = e.detail;
}
rolex replicas
louis vuitton handbags
DM800
ed hardy
rolex replica
knockoff designer handbags
replica gucci handbags
cheap louis vuitton bags