セキュリティマネージャを解決しない:RMIクラスローダーを無効にする



Solve No Security Manager



発生した問題:

Caused by: java.lang.ClassNotFoundException: com.rule.CardUserInfo (no security manager: RMI class loader disabled) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:406) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:196) at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:648) at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:275) at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:228) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1662) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1583) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1819) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1416) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:419) at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:336) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:185) ... 38 more



問題の原因:

異常はそれを非常に明確にしましたCardUserInfoこのオブジェクトを使用する権限はありません。サーバーがオブジェクトをCardUserInfoとクライアントに返すためCardUserInfoに一貫性がありません。 RMIには、パッケージ名と属性を含むメソッドの2つのクラスが常に必要です。

解決:

意志クライアントとサーバーでのCardUserInfoクラスの統一。