if (op != -1) {
// Using 1.1. RMI protocol version
if (skel == null) {
// rmi.65=Skeleton class not found.
throw new UnmarshalException(Messages.getString("rmi.65")); //$NON-NLS-1$
}
String m = skel.getOperations()[op].toString();
logServerCall(m);
try {
skel.dispatch((Remote) ref.get(), call, op, h);
} catch (Throwable t) {
Exception ex = prepareException(m, t);
RMIObjectOutputStream oout =
(RMIObjectOutputStream) call.getResultStream(false);
oout.writeObject(ex);
}
try {
call.getOutputStream().flush();
} catch (IOException ioe) {
}
return;
}
// Using 1.2 RMI protocol version
Method m = (Method) remoteMethods.get(new Long(h));
if (m == null) {
// rmi.66=Method with hash = {0} not found.
throw new UnmarshalException(Messages.getString("rmi.66", h)); //$NON-NLS-1$
}
logServerCall(m.toString());
Object[] params = readParams(m, oin);
call.releaseInputStream();
Object toReturn = null;