龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Java CORBA入门

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
BelowisasimpleexampleofaCORBAprogram downloadthesourcefile b1.prodUCeaidlfilelikethis/b hello.idl moduleHelloApp{ interfaceHello{ stringsayHello(); }; }; b2.producestubandskeletonfilesthroughidltoJava.exe/b idltojavahello.idl idltojavaisnow

  Below is a simple example of a CORBA program
  download the source file 
  
  <b>1. prodUCe a idl file like this</b>
     hello.idl
     module HelloApp {
       interface Hello    {         
           string sayHello();
      };
    };
  
  <b>2. produce stub and skeleton files through idltoJava.exe</b>
     idltojava hello.idl
     idltojava is now named as idlj.exe and is included in the JDK. 
  
  <b>3. write a server program like this </b>
  
  // HelloServer.java 
    
  import HelloApp.*;
  
  import org.omg.CosNaming.*;
  import org.omg.CosNaming.NamingContextPackage.*;
  import org.omg.CORBA.*;
  
  import java.io.*;
  class HelloServant extends _HelloImplBase 
  {
      public String sayHello()
      {
         return " Hello world !! "; 
      }   
    
  }
  
  public class HelloServer {
  
      public static void main(String args[])
      {
   try{
       // create and initialize the ORB
       ORB orb = ORB.init(args, null);
  
       // create servant and register it with the ORB
       HelloServant helloRef = new HelloServant();
       orb.connect(helloRef);
  
       // get the root naming context
       org.omg.CORBA.Object objRef = 
   orb.resolve_initial_references("NameService");
       NamingContext ncRef = NamingContextHelper.narrow(objRef);
  
       // bind the Object Reference in Naming
       NameComponent nc = new NameComponent("Hello", "");
  
精彩图集

赞助商链接