Files
PolyORB/testsuite/corba/interop/java/common/DynServer.java
Jérôme Hugues c94d96524a Reorganization of the Java interoperability testsuite
[Imported from Perforce change 9740 at 2006-12-01 21:49:22]

Subversion-branch: /trunk/polyorb
Subversion-revision: 37209
2005-11-25 15:04:30 +00:00

89 lines
2.1 KiB
Java

// Generic DSI Server.
public class DynServer
{
public static void main( String args[] )
{
org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init( args, null );
org.omg.CORBA.Object objPoa = null;
org.omg.PortableServer.POA rootPOA = null;
try
{
objPoa = orb.resolve_initial_references( "RootPOA" );
}
catch ( org.omg.CORBA.ORBPackage.InvalidName ex )
{
System.out.println( "Couldn't find RootPOA!" );
System.exit( 1 );
}
rootPOA = org.omg.PortableServer.POAHelper.narrow( objPoa );
DynSkeleton skeleton = new DynSkeleton( orb );
byte[] servantId = null ;
try
{
servantId = rootPOA.activate_object( skeleton );
}
catch ( org.omg.PortableServer.POAPackage.WrongPolicy ex )
{
ex.printStackTrace();
}
catch ( org.omg.PortableServer.POAPackage.ServantAlreadyActive ex )
{
ex.printStackTrace();
}
org.omg.CORBA.Object obj = null ;
try
{
obj = rootPOA.id_to_reference( servantId );
}
catch ( org.omg.PortableServer.POAPackage.WrongPolicy ex )
{
ex.printStackTrace();
}
catch ( org.omg.PortableServer.POAPackage.ObjectNotActive ex )
{
ex.printStackTrace();
}
String reference = orb.object_to_string( obj );
try
{
java.io.FileOutputStream file = new java.io.FileOutputStream( "IOR" );
java.io.PrintStream pfile = new java.io.PrintStream( file );
pfile.println( reference );
file.close();
System.out.println (reference);
}
catch ( java.io.IOException ex )
{
System.out.println( "File error" );
}
try
{
rootPOA.the_POAManager().activate();
System.out.println( "The server is ready..." );
orb.run();
}
catch ( Exception ex )
{
ex.printStackTrace();
}
}
}