我有一个棘手的问题。作为 CORBA 的新手,我无法摆脱它。
如何从另一个实现实例化一个实现对象?
通常,如果我有一个接口 A。我会创建一个 A_Impl 类(在 A_Impl.java 文件中),从 idl 生成的 A_POA 类扩展。
然后,在服务器端我会做这样的事情:
AImpl my_a_impl = new A_Impl ();
org.omg.CORBA.Object ref = orb.activate_object(my_a_impl);
A my_a_object = A.narrow(ref);
但是当另一个对象 B 的方法之一需要返回 A 时怎么办?
在我的 B_impl 类中,我无权访问 orb,因此无法使用 activate_object 方法获取对我的对象的引用。
那么我怎样才能返回这样的对象?
任何帮助将不胜感激。提前致谢 !