我正在尝试让一个RMI可激活服务器工作-但目前还没有运气。实际上,服务器似乎在运行,但是客户机触发了一个奇怪的异常。
我有3个项目:
公共的是客户端和服务器之间的共享代码(如远程接口)。
我遵循的步骤(一直在适应
this tutorial
):
-
启动注册表-->确定
-
运行rmid-->确定
-
启动服务器安装程序--确定
-
启动客户端-->
繁荣!激活失败,因为类位于
常见的
在服务器线程中找不到具有noclasdeffounderror的
.
我将通用类文件包含在服务器的代码库中,因此这些类/接口应该对服务器可用。它在远程接口本身上是失败的——所以唯一的选择似乎是将所有公共代码拉入服务器代码中,但是这样客户端代码就必须知道简单的服务器代码。
我浏览了一下,看起来
this guy here
也有同样的问题。
在这两种情况下,当可激活服务器引用其他包中的类时,都会发生这种情况(在我的例子中,它是第三方链接中的自定义包)。
我真的在这里迷路了-所以任何想法都会被感激的!
编辑
:其他信息-我正在尝试调试问题。客户端在主题中检索远程对象似乎很好(引用不是空的)。一旦调用远程接口的方法(客户端知道该接口),就会抛出异常。如果激活发生在第一个方法调用上,那么这是非常明显的——但不太确定它实际尝试激活远程对象/服务器的时间。