Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2119856
  • 博文数量: 1647
  • 博客积分: 80000
  • 博客等级: 元帅
  • 技术积分: 9980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 15:15
文章分类

全部博文(1647)

文章存档

2011年(1)

2008年(1646)

我的朋友

分类:

2008-10-28 18:10:45

     在idl文件中,修改将要传递参数的函数,将里面的所有非基本类型的参数都改为any,然后每种非基本参数类型都另外定义接口,如:
        interface Student {
            void setName(in string n);
            string getName();
        };

        编译idl

        创建自定义的StudentImpl,public class StudentImpl extends StudentPOA implements Student
        在StudentImpl类中实现Student中的接口,如果有其它的功能需求也可以定义其它方法


        在MyServiceServerImpl类中修改带有自定义类型参数的函数,将自定义类型的参数改为Any类型,并修改函数体:
        Student stu = StudentHelper.extract(s);
                system.out.println(stu.getName());
        修改端Server_AOM代码,仿照原来绑定MyServiceServerImpl实例的代码,另外将一个字符串绑定到StudentImpl的实例上
        在客户端将该对象解析出来,创建Any对象,Any a = orb.create_any(),然后用StudentHelper.insert(a,s)方法将Student写入到a的value值里,在将a作为参数,调用那个有自定义类型参数的函数即可


 

【责编:landy】

--------------------next---------------------

阅读(147) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~