http://www.diybl.com/course/3_program/java/javashl/20100714/443425.html
1. 概述
CORBA: Common Object Request Broker Architecture。
CORBA是一套标准,包含了相关的API以及通信协议的定义,开发者据此可以实现一种与WebService类似的远程调用机制。
我直观地认为,CORBA程序的运行涉及3个进程:
1)Server进程通常时持续运行的,在运行之初它会将对象注册到2);
2)Name Service存放着不同的对象引用,这些对象通过name进行标识;
3)Client进程在需要时会拿着相应的name去向2)索要某一对象引用,得到之后便可调用对象的方法了。
2. JacORB
JacORB一类的产品对CORBA做了实现(包括通信协议等等),因此我们只剩下自己的业务代码需要写了。
也其它的产品比如Orbix,只不过后者是个商业软件。
3. JacORB的安装
1)下载:http://www.jacorb.org/download.html,目前最新jacorb-2.3.1。
2)解压:本例中解压到C:\jacorb-2.3.1。
3)操作系统用户环境变量:
添加JACORB_HOME C:\jacorb-2.3.1
修改CLASSPATH为 .;%JAVA_HOME%\jre\lib;%JACORB_HOME%\lib\antlr-2.7.2.jar;
%JACORB_HOME%\lib\backport-util-concurrent.jar;%JACORB_HOME%\lib\idl.jar;
%JACORB_HOME%\lib\jacorb.jar;%JACORB_HOME%\lib\logkit-1.2.jar;
%JACORB_HOME%\lib\picocontainer-1.2.jar;%JACORB_HOME%\lib\slf4j-api-1.5.6.jar;
%JACORB_HOME%\lib\slf4j-jdk14-1.5.6.jar;%JACORB_HOME%\lib\wrapper-3.1.0.jar;
修改PATH添加%JACORB_HOME%\bin
4)修改C:\jacorb-2.3.1\etc\jacorb.properties:
ORBInitRef.InterfaceRepository=file:/c:/jacorb-2.3.1/IR_Ref
jacorb.naming.ior_filename=c:/jacorb-2.3.1/NS_Ref
其中IR_Ref跟NS_Ref文件所在的位置可以任意,不需要一定跟这一致。这些文件也不需要预先创建。
5)修改C:\jacorb-2.3.1\bin\jaco.bat.tpl:
改名为jaco.bat并将文件内容中的@JAVA_CMD@改成java,将原来的“@JACORB_HOME@”改成“%JACORB_HOME %”。
6)命令行执行ns,查看是否有错误。