我试图通过RMI调用一个远程方法,该方法接受类型MyData
的1个参数,这是服务器端和客户端都知道的接口。
在我的客户端类MyClass
中,我创建了一个类型为MyData
的匿名对象,并将其传递给远程方法,并获得异常:
Caused by: java.lang.reflect.InvocationTargetException
at wt.method.RemoteMethodServer.invoke(RemoteMethodServer.java:795)
at
... 2 more
Caused by: java.lang.ClassNotFoundException: MyClass$1 (no security manager: RMI class loader disabled)
问题:我是否必须使用接口MyData
的实现来传递RMI方法参数?服务器端和客户端都知道实现。
答案 0 :(得分:1)
有可能:
Serializable
,和 (2)可能不是真的,并且可能不需要因为除此之外的任何原因而成为真,并且(3)很可能是不真实的,因为它很可能是仅限客户的类没有服务器的业务。
不要这样做。没有优点,也有一些缺点。使用外部或静态类。