Exemplo de preparação de servidor RMI com ativação
// CountServer.java
import java.rmi.*;
import java.rmi.registry.*;
import java.rmi.activation.*;
public class CountServer {
public static void main(String[] args) {
try {
System.setSecurityManager(new RMISecurityManager());
String serviceName = "Count001";
// cria grupo de ativacao
ActivationGroupDesc gdesc = new ActivationGroupDesc(null, null);
ActivationGroupID gid = ActivationGroup.getSystem().registerGroup(gdesc);
ActivationGroup.createGroup(gid, gdesc, 0);
// Cria objeto servidor
CountImpl myCount = new CountImpl("CountServer", "http://localhost:8080/local/repository/", 0);
// Obtem referencia para registry que
// esta executando na maquina local, operando
// na porta default
Registry r = LocateRegistry.getRegistry();
// Registra a ligacao nome-objeto servidor
// no rmiregistry
r.rebind(serviceName, myCount);
// Tudo feito, servidor esta preparado
// para receber solicitacoes de clientes
System.out.println("Count Server ready.");
}
catch (Exception e) {
System.out.println("Exception: " + e.getMessage());
e.printStackTrace();
}
System.exit(0);
}
}