package calcul; import org.omg.CORBA.ORB; import org.omg.CORBA.UserException; import org.omg.CosNaming.NamingContextExt; import org.omg.CosNaming.NamingContextExtHelper; import org.omg.PortableServer.POA; import org.omg.PortableServer.POAHelper; import org.omg.PortableServer.POAManager; public class Serveur { public static void main(String args[]){ // Initialisation de l'orb ORB orb = ORB.init(args, null); try { // Obtention d'une reference vers le POA manager de la racine POA rootPoa = POAHelper.narrow(orb .resolve_initial_references("RootPOA")); POAManager manager = rootPoa.the_POAManager(); // Activation du POA Manager manager.activate(); // Instanciation d'un servant Calculettefactory CalculetteImpl servant = new CalculetteImpl(); //Création d'une référence sur l'objet servant à enregistrer dans le NS org.omg.CORBA.Object obj = rootPoa.servant_to_reference(servant); //Enregistrement de la référence de l'objet dans un fichier String ior = orb.object_to_string(obj) ; String refFile = "Calculette.IOR" ; java.io.PrintWriter out = new java.io.PrintWriter(new java.io.FileOutputStream(refFile)) ; out.println(ior) ; out.close() ; orb.run(); } catch (Exception ex) { ex.printStackTrace(); orb.destroy() ; } } }