Elipse的CORBA环境建立

2023-10-28 16:18
文章标签 环境 建立 corba elipse

本文主要是介绍Elipse的CORBA环境建立,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Eclipse中corba环境的建立

上章介绍了Corba中idl的词法规则。这里介绍一下corba在eclipse中开发环境的建立:

一:下载corba产品 OpenORB (http://sourceforge.net/projects/openorb/ )里面的内容全下。

类似于:

2,开发工具:Eclipse (这个不必说了吧,是一个公共开发平台,并可做为C、C++、Cobol等语言的开发IDE,十分优良,强烈推荐)我用的是3.1的。3.0的也可以。

3,插件:ORBStudio772package.zip 在(http://homepage2.nifty.com/interpress/ORBstudio/download/ORBStudio772package.zip)下载。

好,工具都有了,开始配置:

二,安装配置步骤

1.解压OpenOrb.rar
2.解压ORBStudio772package.zip里面的插件,到相应的Eclipse插件目录下
3.添加环境变量TCOO_HOME,值为OpenOrb目录的路径
4.启动eclipse
5.在下拉菜单Window的Preferences项里找到ORB Studio--->IDL Compiler--->OpenORB, 在IDL Command栏里,找到OpenOrb安装目录下的OpenORB/bin/idl2java.bat, 在Command Options栏里,填写参数 -d %D%  %F%

#############################################################################

三,开发步骤参考

1.在eclipse里新建项目,Project lauyout 选择Create separate source and output folders
2.给新项目添加Libraries,右键Properites--->Libraries--->Add Library--->User Library

 --->User Libraries...--->New...--->Add JARs...

  找到OpenOrb/OpenORB/lib目录下openorb_orb-1.4.0.jar,openorb_orb_tools-1.4.0.jar
      OpenOrb/OpenORB/lib/endorsed目录下openorb_orb_omg-1.4.0.jar
      OpenOrb/tools/lib目录下launcher.jar,tools-1.4.0.jar
      OpenOrb/tools/lib/目录下所有.jar文件


3.src上右键New--->Other--->CORBA Wizard--->IDL files--->Simple IDL
4.选择IDL文件,右键ORB Menu--->Compile 把生成的MyServer包移动到src目录下
5.src上右键New--->Other--->CORBA Wizard--->Server--->Active object map--->Next

 在弹出的对话框里IDL filename栏选择/{projectName}/src/{IDLname}.idl

   Interface栏选择IDL文件里定义的接口名

   Package栏里填写包名

   Server classname栏里填写服务端类名

 --->Next    在弹出的对话框,选中Create server class:项


6.为生成的服务端类添加未实现的方法,并填写方法体
7.src上右键New--->Other--->CORBA Wizard--->Client--->Simple implementation 在弹出的对话框里IDL filename栏选择/{projectName}/src/{IDLname}.idl

   Interface栏选择IDL文件里定义的接口名

   Package栏里填写包名

   Client classname栏里填写客户端类名


8.在客户端类的main方法里,取消注释test.getORBInterface().operation1("A message in the bottle..."); 并修改传递的String内容
9.运行服务端程序Server_AOM.java,然后运行客户端程序MyServiceClientImpl.java

如果,你要将你的程序包发布到别的机器上,就要用到名称服务,使用名称服务,我们需要在java代码上作些修改:

使用名称空间的配置:


1.找到并注释服务端Server_AOM.java里main方法的下列代码:

 PrintWriter ps = new PrintWriter(new FileOutputStream(new File("server.ior")));
 ps.println(orb.object_to_string(obj));
 ps.close();


 取消下列代码(位置在上面代码的上方)的注释:

 // org.omg.CORBA.Object ncobj = orb.resolve_initial_references("NameService");
 // NamingContextExt nc = NamingContextExtHelper.narrow(ncobj);
 // nc.bind(nc.to_name("MyServerObject"), obj);

 修改bind方法为rebind

 并引入新的类

 

2.找到并注释客户端MyServiceClientImpl.java里main方法的下列代码:

 LineNumberReader input = new LineNumberReader(new FileReader("server.ior"));
 String ior = input.readLine();
 org.omg.CORBA.Object obj = orb.string_to_object(ior);

 取消下列代码(位置在上面代码的上方)的注释:

 // org.omg.CORBA.Object ncobj = orb.resolve_initial_references("NameService");
 // NamingContextExt nc = NamingContextExtHelper.narrow(ncobj);
 // org.omg.CORBA.Object obj = nc.resolve_str("MyServerObject");

 引入新的类

 修改org.omg.CORBA.Object ncobj = orb.resolve_initial_references("NameService");里面的参数,服务端Server_AOM.java也要改。

 改为"corbaloc::1.2@hostname:portNumber/NameService"

 修改resolve_initial_references方法为string_to_object

 修改所有异常为Exception


3.用命令行的方式,在OpenOrb/NamingService/bin目录下执行ins -ORBPort=portNumber


4.带参数 -ORBInitRef NameService=corbaloc::1.2@hostname:portNumber/NameService 运行服务端Server_AOM.java,

  然后运行客户端程序MyServiceClientImpl.java

 

结果是一样的。

目前为止,corba的本地、远程开发都已经配置完毕。以后在具体应用过程中遇到什么困难,欢迎大家一起探讨。

(本配置教程出自同事liwf之手,感谢其孜孜不倦的工作!)

TrackFrom:http://blog.donews.com/chaoyang/archive/2005/09/28/570630.aspx


 

这篇关于Elipse的CORBA环境建立的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/294413

相关文章

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

python获取cmd环境变量值的实现代码

《python获取cmd环境变量值的实现代码》:本文主要介绍在Python中获取命令行(cmd)环境变量的值,可以使用标准库中的os模块,需要的朋友可以参考下... 前言全局说明在执行py过程中,总要使用到系统环境变量一、说明1.1 环境:Windows 11 家庭版 24H2 26100.4061

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

SpringBoot实现多环境配置文件切换

《SpringBoot实现多环境配置文件切换》这篇文章主要为大家详细介绍了如何使用SpringBoot实现多环境配置文件切换功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 示例代码结构2. pom文件3. application文件4. application-dev文

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见

Gradle下如何搭建SpringCloud分布式环境

《Gradle下如何搭建SpringCloud分布式环境》:本文主要介绍Gradle下如何搭建SpringCloud分布式环境问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Gradle下搭建SpringCloud分布式环境1.idea配置好gradle2.创建一个空的gr

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮