All pastes #386699 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-03-08 20:56 UTC
rendered paste body
// EDS CORBA 2.6 Xuepeng Deng 28/02/07

// JDK1.4.2 with JacORB 2.2

// bank\BankServer.java

// simple server using COS Naming

package bank;

import javax.naming.*;
import java.io.*;
import org.omg.CORBA.ORB;
import org.omg.PortableServer.*;
import org.omg.CosNaming.*;


public class BankServer
{
    public static void main(String args[])
    {
	  try
	  {
			// create and initialize the ORB
			ORB orb = ORB.init(args, null);
			
			//for the context
			Context initial =new InitialContext();


			// POA
			org.omg.CORBA.Object tmpobj = orb.resolve_initial_references("RootPOA");
			POA rootPOA = POAHelper.narrow(tmpobj);
			POAManager poaManager = rootPOA.the_POAManager();

			ManagerImpl managerImpl = new ManagerImpl(orb);
			bank.Manager managerRef = managerImpl._this(orb);
			// get a reference to the naming service
			org.omg.CORBA.Object o = orb.resolve_initial_references("NameService");
			NamingContextExt rootContext = NamingContextExtHelper.narrow( o );

			// Create a context called 
			NameComponent nc = new NameComponent ("MyBankServer", "BankServer");
			NameComponent path[] = {nc};

			// Bind the obj ref to that context, overwriting as necessary any previous binding
			rootContext.rebind(path, managerRef);

			System.err.println("Object Reference successfully registered in Naming Service.");

			poaManager.activate();

			System.err.println("Bank server listening ...");
			orb.run();
			System.exit(0);
      } //try

      catch (Exception e)
      {
			System.err.println("server oops:\n" + e.getMessage());
			e.printStackTrace();
      }

    } // main
} // class