科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道用RMI和CORBA进行分布式Java编程

用RMI和CORBA进行分布式Java编程

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Java远程方法调用(RMI)机制和公用对象请求代理体系(CORBA)是最重要和使用最广泛的两种分布式对象系统。它们在行业中被用于从电子交易到保健医疗的各个领域。

作者:大海 来源:CSDN 2008年2月29日

关键字: java CORBA RMI

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共7页)

开发客户机

下一步是开发客户机。代码范例8中演示了一个实现。获得指向命名服务的引 用之后,就可以用它来访问命名服务和查找其他服务(例如FileTransferFileTransfer服务时,将调用downloadFile 方法。

代码范例 8: FileClient

import java.io.*;
import java.util.*;
import org.omg.CosNaming.*;
import org.omg.CORBA.*;
public class FileClient {
public static void main(String argv[]) {
try {
// create and initialize the ORB
ORB orb = ORB.init(argv, null);
// get the root naming context
org.omg.CORBA.Object objRef =
orb.resolve_initial_references("NameService");
NamingContext ncRef = NamingContextHelper.narrow(objRef);
NameComponent nc = new NameComponent("FileTransfer", " ");      
// Resolve the object reference in naming
NameComponent path[] = {nc};
FileInterfaceOperations fileRef =
FileInterfaceHelper.narrow(ncRef.resolve(path));
if(argv.length < 1) {
System.out.println("Usage: java FileClient filename");
}
// save the file
File file = new File(argv[0]);
byte data[] = fileRef.downloadFile(argv[0]);
BufferedOutputStream output = new
BufferedOutputStream(new FileOutputStream(argv[0]));
output.write(data, 0, data.length);
output.flush();
output.close();
} catch(Exception e) {
System.out.println("FileClient Error: " + e.getMessage());
e.printStackTrace();
}
}
}
运行应用程序 

最后一步是运行应用程序。这其中包括几个子步骤:

  1. 运行CORBA命名服务。这可以使用命令tnameserv。 缺省情况下,该服务在端口900上运行。如果不能在这个端口运行命名服务, 你可以在其他端口上启动它。例如,要在端口2500上启动命名服务,请使用以 下命令:

    prompt> tnameserv -ORBinitialPort 2500

     
  2. 启动服务器。如下所示,假定命名服务是在缺省的端口号上运行:

    prompt> java FileServer

    如果命名服务运行于其他端口之上,比如2500,则需要使用 ORBInitialPort选项来指定端口,如下所示:

    prompt> java FileServer -ORBInitialPort 2500

  3. 生成用于客户机的存根。在可以运行客户机之前,先要生成客户机 的存根。为此需要复制FileInterface.idl文件,并使用idlj编 译器来编译它,在编译前指定希望生成的结果是客户机端存根,如下所示:

    prompt> idlj -fclient FileInterface.idl

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章