1 package org.jacorb.test.common; 2 3 22 23 import org.omg.CORBA.*; 24 import org.omg.PortableServer.*; 25 import java.io.*; 26 27 import org.apache.avalon.framework.configuration.Configurable; 28 import org.apache.avalon.framework.configuration.Configuration; 29 import org.apache.avalon.framework.logger.Logger; 30 31 52 public class TestServer 53 { 54 public static void main (String [] args) 55 { 56 Logger logger = null; 57 try 58 { 59 ORB orb = ORB.init( args, null ); 61 62 Configuration config = ((org.jacorb.orb.ORB)orb).getConfiguration(); 63 logger = ((org.jacorb.config.Configuration)config).getNamedLogger("TestServer"); 64 65 POA poa = 67 POAHelper.narrow( orb.resolve_initial_references( "RootPOA" )); 68 poa.the_POAManager().activate(); 69 70 String className = args[0]; 71 Class servantClass = Class.forName (className); 72 Servant servant = ( Servant ) servantClass.newInstance(); 73 74 if (servant instanceof Configurable) 75 ((Configurable)servant).configure (((org.jacorb.orb.ORB)orb).getConfiguration()); 76 77 org.omg.CORBA.Object obj = poa.servant_to_reference( servant ); 79 80 System.out.println ("SERVER IOR: " + orb.object_to_string(obj)); 81 System.out.flush(); 82 83 logger.debug("Entering ORB event loop" ); 84 85 orb.run(); 87 } 88 catch( Exception e ) 89 { 90 if (logger != null) 91 logger.fatalError ("TestServer error ", e); 92 else 93 System.err.println ("TestServer error " + e); 94 } 95 } 96 } 97 | Popular Tags |