最近需要在分布式环境下开发应用,打算用Orbacus+Eclipse组合,发现ORBStudio777中并无Orbacus相关配置选项,遂在原作者的ORBStudio777版本上增添了Orbacus的选项,(源码包和编译好的插件在附件中),这里,我将整个环境搭建过程写下:
系统环境和软件版本:
(1)WinServer2008R2(x64)
(2)JDK:jdk-6u22-windows-x64.exe
(3)eclipse:eclipse-java-helios-SR1-win32-x86_64.zip
(4)Orbacus:JOB-4.3.4-win32.zip
(4) eclipse插件:ORBStudio777(自己修改的增强版^^)
(5)ANT:apache-ant-1.8.1-bin.zip(用于编译安装Orbacus)
软件下载:
Orbacus : http://web.progress.com/en/orbacus/downloads.html
其余略去
参考:http://bfcat.iteye.com/blog/769584
一、安装JDK:
1)将JDK安装到D:\install\jdk1.6(目录随便放,这里为了统一,均方在D:\install目录,下同)。
2)设置JAVA_HOME环境为:D:\install\jdk1.6。
3)修改环境变量Path,增加:D:\install\jdk1.6\bin。
二、安装ANT编译工具:
1)解压apache-ant-1.8.1-bin.zip到D:\install\ant下。
2)设置环境变量ANT_HOME为:D:\install\ant。
3)修改环境变量Path,增加:D:\install\ant\bin。
三、安装Orbacus4.3.4
1)解压JOB-4.3.4-win32.zip到D:\install\JOB,调整目录结构为
D:\install\JOB
|--bin
|--JOB-4.3.4
2)修改环境变量Path,增加:D:\install\JOB\bin
3)编译安装Orbacus到D:\install\JOB目录下:
打开命令行窗口,切换到D:\install\JOB\JOB-4.3.4目录下,执行命令:ant -Dinstall.dir=D:\install\JOB
此时,D:\install\JOB目录下多了idl和lib两个目录
四、测试Orbacus安装成功,这里我以demo下的hello为例:
1)运行服务器:打开一个命令行窗口,切换到D:\install\JOB\JOB-4.3.4\ob\demo\hello目录下,执行命令:
set CLASSPATH=..\..\lib;classes;%CLASSPATH%
java -Xbootclasspath/p:%CLASSPATH% hello.Server
2)运行客户端:打开一个命令行窗口,切换到D:\install\JOB\JOB-4.3.4\ob\demo\hello目录下,执行命令:
set CLASSPATH=..\..\lib;classes;%CLASSPATH%
java hello.Client
3)在客户端输入"h”,在服务端收到"Hello World!” 说明此时成功。
4) -Xbootclasspath选项是告诉JVM优先使用其后所指定的类库中搜索需要的类。不加这个参数,出现:
Exception in thread "main" java.lang.NoSuchMethodError: org.omg.PortableIntercep
tor.IORInterceptor_3_0.adapter_manager_state_changed(Ljava/lang/String;S)错误,原因是Orbacus自带的类库和JDK类库不兼容的缘故。
五、安装eclipse:
1)将eclipse-java-helios-SR1-win32-x86_64.zip解压到D:\install\eclipse下
六、安装ORBStudio777插件:
1)在D:\install\eclipse\dropins目录下,新建ORBStudio(名字任意)目录,建好的目录结构如下:
D:\install\eclipse\dropins
|--ORBSTudio
|--eclipse
|--plugins
2)将ORBStudio777.jar包拷到plugins目录下
3)打开eclipse,选择window->Preferences,左侧多出ORB Studio选项卡,将默认IDL Compile改为Orbacus;并配置Orbacus的IDL Command为:D:\install\JOB\bin\jidl.exe
七、创建eclipse的一个HelloWorld示例:
1)打开eclipse,新建名为HelloWorld的java project。
2)创建idl:
鼠标右击src->New->Other,在CORBA Wizard下,选择IDL files下的Simple IDL
3)打开simple.idl文件,修改module后的声明为test
4)右击simple.idl文件,->ORB Menu(O)->Compile进行编译,此时会生成test包,里面有8个java文件
5)鼠标右击src->New->Other,在CORBA Wizard下,选择Server下的Default servant,在IDL filename中,选择/{projectname}/src/{idlname}.idl,在Interface中,选择test.MyService;在package中,输入server,点击下一步,勾选生成类
6)右击src->New->Other,在CORBA Wizard下,选择Client下的simple implementation,在IDLfilename中,选择/{projectname}/src/{idlname}.idl,在Interface中,选择test.MyService;在package中,输入client,点击Finish
7)修改Server端的代码:
public class MyServiceServerImpl extends test.MyServicePOA {
@Override
public void operation1(String msg) {
// TODO Auto-generated method stub
System.out.println(msg);
}
}
8)修改Client端 MyServiceClientImpl的代码:
public static void main(String[] args) {
try {
MyServiceClientImpl test = new MyServiceClientImpl();
test.getORBInterface().operation1("HelloWorld!");
test.shutdown();
}
catch(IOException ex) {
ex.printStackTrace();
}
}
9)配置并运行Server端:
右击项目名称,->Run As->Run Configuations,新建一个Java Application的launch configuration,
在main选项卡中的Poject选择HelloWorld;MainClass选择server.Server_DefaultServant;在Arguments选项卡的VM arguments中输入-Xbootclasspath/p:D:\install\JOB\lib\OB.jar,运行,服务端即开启
10)运行客户端:
在命令行窗口中进行操作,方法和上面的demo相同。
11)运行结果:
Server端会收到一条客户端发来的HelloWorld!消息,并打印。
分享到:
相关推荐
**Orbacus 4.3.4:一个强大的CORBA C++开源库** Orbacus是一个专门为实现CORBA(Common Object Request Broker Architecture)标准而设计的C++库,由IONA公司开发,后来被PROGRESS Software公司收购。CORBA是一种...
ORBacus对GIOP的实现允许其适应不同的网络环境,增强了系统的灵活性和互操作性。 再者,ORBacus包含了ORB服务,如命名服务、事件服务、交易服务等,这些都是CORBA规范定义的关键服务。命名服务提供了一种对象寻址...
【Orbacus-4.3.4 for Linux】是一款针对Linux操作系统设计的CORBA(Common Object Request Broker Architecture)实现工具,由Orbacus官方开发并发布。此版本被视为官方的最终版,意味着它可能包含了所有必要的功能...
总之,Orbacus 4.3.4d是一个强大的工具,对于需要在C++环境中开发CORBA应用的开发者来说,这是一个宝贵的资源。理解其工作原理、如何配置和使用,以及如何利用Debug库进行有效调试,是成功开发的关键步骤。通过深入...
Orbacus-4.3.4版本的使用指南详细描述了如何使用Orbacus开发基于CORBA标准的分布式应用程序。文档中提供了丰富的代码示例,以及这些示例的说明,这些示例贯穿了整个开发过程,帮助开发者理解如何构建服务端和客户端...
### ORBACUS库编译指南 #### 一、概述 ORBACUS是一个与CORBA相关的库,主要用于帮助开发者构建分布式应用系统。CORBA(Common Object Request Broker Architecture)是一种跨语言、跨平台的对象请求代理标准,它...
This manual describes how Orbacus implements the CORBA standard, and describes how to develop and maintain code that uses the Orbacus ORB. This is the primary developer’s guide and reference for ...
《IONA CORBA C++ Programming With ORBacus》是一本深入探讨如何使用IONA公司的ORBacus库进行CORBA(Common Object Request Broker Architecture)C++编程的教程。这本书旨在帮助开发者理解并熟练掌握CORBA标准在...
Orbacus JThreads/C++ Guide 是 Progress Software Corporation 发布的一份技术指南文档,该文档主要针对的是 Version 4.3.4 版本,并于 2010 年 2 月发布。这份文档涵盖了 JThreads 和 C++ 在 Orbacus 上的应用指南...
**OOC4.3.4** 是一个针对 **CORBA**(Common Object Request Broker Architecture,公共对象请求代理架构)的 **C++** 开源库,由 **PROGRESS** 公司提供。CORBA 是一种标准的中间件技术,旨在解决分布式系统中的...
This manual describes the FreeSSL plug-in, which enables secure communications using the Orbacus ORB in both Java and C++.
This manual describes Orbacus Notify, an implementation of the Object Management Group’s Notification Service specification.
对于 Java,存在专门的 CORBA ORB 实现,如 Orbacus、Orbix 等,它们提供了 Java 程序与 CORBA 环境交互的能力。 3. **CORBA 运行时库**:为了支持 Java 应用与 CORBA 的集成,需要有相应的运行时库。这些库包含了...
在安装 Windows 操作系统前,需要获取安装文献,从“\\172.20.2.121\tools\VS SP1 下 ACE 5.5 + Qt 3.3.8 + Orbacus 4.3.2”上预编译好 ACE_wrappers_5_5.rar,Qt.rar,IONA.rar 等安装包。同时,也可以从“\\yf-...
Minos是用C ++编写的OMG CORBA Notification Service的轻量级可移植实现。 可以使用omniORB,TAO,MICO和ORBacus构建。
CORBA(通用对象请求代理体系结构)是一个工业标准的中间件架构,它定义了如何在分布式计算环境中实现对象之间的通信。这本书的目的是让读者能够了解CORBA的基础知识,而无需深入到繁琐的底层实现细节中。 描述中...
CORBA(Common Object Request Broker Architecture,公共对象请求代理架构)是一种标准的中间件技术,它允许分布在不同网络环境、操作系统和编程语言中的对象相互通信,实现分布式系统的构建。Java作为一种跨平台的...
`LICENSE.ORBacus`可能指定了与ORBacus(一个CORBA ORB实现)相关的特定许可条款。 **项目构建与配置** 项目包含`win32.ant.properties`和`unix.ant.properties`文件,这些文件是Ant构建工具的配置文件,用于定义...