- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我刚刚开始使用 CORBA。基本上,我必须实现一个充当 CORBA 客户端的 Java 应用程序。
此时,我主要使用 Sun JDK (JDK6) 工具,包括 idlj.exe(用于编译给我的 IDL)和 orbd.exe(用于测试我的代码),到目前为止,我已经能够使用 idlj 和 IDL 来创建 Java 类,而且我还编写了一个测试服务器应用程序和测试客户端应用程序,它们现在都在工作(我必须编写小型服务器应用程序以便我可以测试我的客户端应用程序)。
正如我上面所说,我使用 orbd.exe 作为测试的 ORB。
最初,我有 orbd.exe、我的 Java 服务器应用程序和我的 Java 客户端应用程序,它们都在同一台机器上运行,并且运行良好。
我还在更分布式的配置中进行了测试,我在另一台机器 (testxp) 上运行 orbd.exe 和我的 Java 服务器应用程序,在另一台机器上运行我的 Java 客户端应用程序,并且可以正常工作。
我的问题如下:我看过的很多文档、网页等都是re. CORBA 有显示两个 ORB 的图表,例如,一台机器上的一个服务器应用程序和一个 ORB,以及一个客户端应用程序和另一个/第二个 ORB 在另一台/第二台机器上运行,这两个 ORB 相互通信:
客户端应用程序 ==> ORB1 ----> ORB2 ==> 服务器应用程序
然而,到目前为止,在我的测试中,使用 orbd.exe 作为 ORB,我只使用了一个 ORB。
所以,我想知道如何在有两个 ORB 的情况下配置测试配置,如上所述?
我可以使用 orbd.exe 执行此操作吗,或者 orbd.exe 是否无法在该类型的配置中工作?
此外,如果可以使用 orbd.exe 完成,我该怎么做?
谢谢,吉姆
最佳答案
CORBA 是一种在网络中通信应用程序的体系结构和基础结构。而 ORB 是序列化(编码)和反序列化(解码)对 IIOP 的调用的组件。使用 CORBA,您可以用 C# 编写代码(使用 IIOP.NET )并用 Java 与服务器通信。
所以,你是对的,通信是在 ORB 之间进行的。
|客户端应用| <==> ORB1 <--(IIOP)--> ORB2 <==> |服务器应用程序|
ORBD 是一个带有命名服务器的 ORB。最好只有一个名称服务,您可以阅读有关名称服务的信息 here .
最后,您可以通过多种方式启动 ORB 之间的通信。 (a) 在 POA 中激活 servant 并调用方法 *poa.object_to_string(servant)*,将字符串写入文件,然后使用 *poa.string_to_object(fileAsString)* 在客户端读取它。 (b) 定义服务器主机和端口并使用 corbaloc。 (c) 在名称服务器中订阅(最佳选择)。
尝试在测试中使用三个进程。名称服务器、客户端、服务器。
PS:我喜欢 JacORB 然后是 JDK Orb
编辑:添加一些代码来帮助:
orb = org.omg.CORBA.ORB.init(args, props);
org.omg.CORBA.Object obj = this.orb.resolve_initial_references("RootPOA");
this.rootPOA = POAHelper.narrow(obj);
POAManager manager = this.rootPOA.the_POAManager();
manager.activate();
关于java - CORBA(orbd)联网配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9294616/
我正在寻找一种快速开始使用可以访问相机、快速拍摄快照并将其上传到互联网站点的应用程序的方法。 由于我正在寻找 RIA 开发,我想我需要一个框架(理想情况下尽可能轻量级)。 对我和大多数读者来说,最好的
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我一直在尝试理解 rxSwift。我面临请求问题并希望以良好的方式实现这一点。目前,我正在使用此代码: enum RequestState { case loading case lo
我正在使用 Linux epoll 工具开发一个用 C 语言编写的网络应用程序。 我确实在实现我自己的事件循环,是的,我知道有一些库可以为我做这件事。然而,这只是一个练习,我_想_自己实现事件循环。
我正在为 WatchOS 构建一个应用程序扩展,我想在 Watch 应用程序中执行一些 URL 请求。我在网络部分使用 Alamofire。 每当我做一个简单的请求时,我在模拟器和真实设备上都会收到这
我使用这个官方指南在 Windows 7 机器上设置 Docker: https://docs.docker.com/windows/started/ 我成功地从 docker hub 拉取了一个镜像
我使用的示例代码来自这个 Stack Overflow 问题 (http://stackoverflow.com/questions/3240617/cfnetwork-and-bonjour-int
在 Windows 平台上使用套接字的最佳方式是什么? 我猜是基本套接字,TCP/IP。也许是为了聊天客户端,或者只是为了学习。 谁能给我一个 WININET 用法的例子? 也许是 ftpgetfil
这是我的问题: 我写了一个可以运行的 python 脚本,但只能在我的机器上运行(当我在我的解释器中运行它时)。 我还编写了 .bat 和 .ini 文件(就像我已经为其他有效的脚本所做的那样),当我
我是一名优秀的程序员,十分优秀!