Java 版 (精华区)
发信人: angle (finder), 信区: Java
标 题: CORBA与java(4)
发信站: 哈工大紫丁香 (Sat Jun 19 13:54:12 1999), 转信
ORBQuery 小 应 用
这 个 客 户 端 的 小 应 用 含 有 标 准 的Java GUI, 并 将 调 用 一 ?
远 程CORBA 对 象。 一 旦 该 对 象 被 调
用, 就 可 以 使 用 其 方 法 获 得 某 一 指 定CORBA ORB 的 信 息。 在 服 务 器
端, 为 了 获 得 特 定ORB 的 如 下 信
息: 名 称(Name)、 销 售 商(Vendor)、 操 作 系 统(Operating System)、 语
言(Languages) 和URL, 我 们 必
须 定 义 五 个 方 法。 因 此, 必 须 在IDL 接 口 中 定 义 这 五 种 方 法 才 能
获 取 相 应 信 息。 表3 定 义 了 这 个 名
为ORBInfo 的 接 口:
表 3: ORBInfo IDL 界 面
module ORBQuery
{
interface ORBInfo
{
string GetName(in long index);
string GetVendor(in long index);
string GetOS(in long index);
string GetLanguages(in long index);
string GetURL(in long index);
};
};
VisiBroker 安 装 中 含 有 一 个IDL 编 译 器 ─ ─idl2java, 你 可 以 ?
? 它 生 成 实 现 该 接 口 必 需 的Java 代 码。
软 件 安 装 完 成 之 后, 只 要 执 行 如 下 命 令 即 可 生 成 代 码:
idl2java ORBInfo.idl
这 步 操 作 将 创 建 一 个 名 为ORBQuery 的 子 目 录( 与ORBQuery Java
包 相 对 应)。 在 该 目 录 内 有8 个 文
件:ORBInfo.java,ORBInfoHolder.java、ORBInfo
Helper.java、_st_ORBInfo.java,_sk_ORBInfo.java、ORBInfoOperations.java、_tie_O
RBInfo.java
和_example_ORBInfo.java。 你 可 能 已 经 猜 到,ORBInfo.java 文 件 含 有 定 义O
RBInfo 接 口 的Java 源 文 件, 但
其 它 的Java 类 又 怎 样 呢 ?
ORBInfoHolder.java 文 件 内 含 有 一 个 传 递 参 数 时 使 用 的 主 类?
╤older class), 而ORBInfo-Helper 类 则 定
义 了 各 种 实 用 函 数。_st_ORBInfo 类 定 义 了 客 户stub,_sk_ORBInfo 定 义 ?
? 服 务 器 框 架 类(skeleton
class)。ORBInfoOperations 和_tie_ORBInfo 类 用 于 实 现 一 种 捆 绑 机 制, 这
是VisiBroker 的 一 个 特 性, 它 使
得 实 现 类 能 够 继 承 框 架 类 之 外 的 类。 在 示 例 中, 我 们 不 会 直 接
使 用 这 几 个 类。 最
后,_example_ORBInfo 含 有 一 个 示 例 服 务 器 对 象, 对 它 加 以 扩 展 就 可
创 建 一 个 服 务 器 应 用 程 序。
通 过IDL 编 译 器 生 成 的 这 八 个Java 类, 我 们 可 以 构 建 一 个 ?
? 架, 由 一 个 接 口(interface)、 一
个stub、 一 个skeleton 和 几 个 帮 助 类, 我 们 可 以 用Java 创 建 自 己 的 客
户 机/ 服 务 器 模 式 的CORBA 应 用 程
序。
--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: www-post@bbs.hit.edu]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.393毫秒