📄 25.txt
字号:
例程25-1
//HelloServer.Java
import HelloApp.*;
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;
import Java.io.*;
class HelloServant extends _HelloImplBase
{
public String sayHello()
{
System.out.println("客户端发送调用请求。");
return "Hello World.";
}
}
public class HelloServer
{
public static void main(String args[])
{
try{
// 创建和初始化 ORB
ORB orb = ORB.init(args, null);
// 创建服务对象并将其向 ORB 注册
HelloServant helloRef = new HelloServant();
orb.connect(helloRef);
// 获取根命名上下文
org.omg.CORBA.Object objRef =
orb.resolve_initial_references("NameService");
NamingContext ncRef = NamingContextHelper.narrow(objRef);
// 绑定命名中的对象引用
NameComponent nc = new NameComponent("Hello", "");
NameComponent path[] = {nc};
ncRef.rebind(path, helloRef);
// 等待来自客户机的调用
Java.lang.Object sync = new Java.lang.Object();
synchronized (sync) {
sync.wait();
}
} catch (Exception e) {
e.printStackTrace(System.out);
}
}
}
例程25-2
//HelloClient.Java
import HelloApp.*;
import org.omg.CosNaming.*;
import org.omg.CORBA.*;
public class HelloClient
{
public static void main(String args[])
{
try{
// 创建和初始化ORB
ORB orb = ORB.init(args, null);
// 获取根命名上下文
org.omg.CORBA.Object objRef
=orb.resolve_initial_references("NameService");
NamingContext ncRef = NamingContextHelper.narrow(objRef);
//解析命名中的对象引用
NameComponent nc = new NameComponent("Hello", "");
NameComponent path[] = {nc};
Hello helloRef = HelloHelper.narrow(ncRef.resolve(path));
//调用CORBA对象的方法并打印出来
String Hello = helloRef.sayHello();
System.out.println(Hello);
} catch (Exception e) {
e.printStackTrace(System.out);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -