RMI问题,望高手解惑,分大大的有

SnowFisher 2004-05-05 06:56:24
如果数据库中有一张表记录了远程服务器上的一些方法(method),比如这样:

+-----------+-------------+-------------------+---------------+-------+
| class_name| method_name | return_value_type |first_arg_type | URL |
+-----------+-------------+-------------------+---------------+-------+
classA methodA int int ...
classA methodB class1 class2 ...
... ... ... ... ...

总之,记录了类名、所用参数类型和参数顺序、返回值类型还有远程服务器的位置。

能不能顺序调用表中的所有方法?有什么解决方案?

如果用rmi,最大的问题是在写代码的时候根本就不知道方法名,不可能写这样的代码:
String url = "//localhost:8808/SAMPLE-SERVER";
RmiSample RmiObject = (RmiSample)Naming.lookup(url);
System.out.println(" 1 + 2 = " + RmiObject.sum(1,2) ); //?

还有就是,参数的类型可能是任何类型,本地的JVM可能根本不知道,如何调用?

What shall I do?
...全文
30 5 点赞 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
haisj 2004-05-06
虽然我不知道你为何要实现这种功能,但是Java的类的动态调用是比较强大的。你可以在服务器端实现这些类的动态引用。把结果作为参数返回。这和是否知道类的名称是没有关系的。你可以采用继承的方式,这样只有度会更大点。另外你定义的类必须序列化。
祝你好运

  • 打赏
  • 举报
回复
SnowFisher 2004-05-06
简单说就是希望调用远程的某个类的某个方法,但是这个方法的规格(signature)和类所在的位置(URL)要在运行时才能取得。

看了一夜文档,大概有办法了。用jax-rpc和dii可以实现的。

谢谢你们的参与。也请对这方面有研究的牛人给些提示。
  • 打赏
  • 举报
回复
minghuitian 2004-05-06
RMI好象不关心类本身所在的位置,但是你要知道被调用方法的规格.
  • 打赏
  • 举报
回复
oxv 2004-05-06
给你up下
  • 打赏
  • 举报
回复
minghuitian 2004-05-05
不知道什么意思?
gz
  • 打赏
  • 举报
回复
相关推荐
发帖
Java EE
加入

6.7w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2004-05-05 06:56
社区公告
暂无公告