0
我有jvm 1.5運行的現有rmi服務器和在jvm 1.6中運行的客戶端沒有問題的通信。java rmi在不同的jvm版本中調用失敗
然而,當我運行(服務器JVM 1.7 /客戶端jvm1.7下)OR(服務器JVM 1.7下/客戶端JVM 1.6)得到下面的錯誤 -
java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
java.io.EOFException
java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
java.io.EOFException
at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
at sun.rmi.server.UnicastRef.invoke(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at com.tmobile.kiosk.simulator.Kiosk.<init>(Unknown Source)
at com.tmobile.kiosk.simulator.Kiosk.main(Unknown Source)
Caused by: java.io.EOFException
at java.io.DataInputStream.readByte(Unknown Source)
隨着(服務器JVM 1.5 /客戶端JVM 1.7)出現以下錯誤 -
java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
java.lang.ClassNotFoundException: com.xxx.yyy.zzzserver.ZZZServerFactoryImpl_Stub (no security manager: RMI class loader disabled)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
這是由於Java版本中的RMI更改而發生的嗎?
我可以在沒有任何代碼更改的情況下在JVM 1.7中運行rmi Server,以便現有客戶端(jvm 1.5等)可以連接到它。
我們不重建可能使用java 1.4或1.5構建的jar文件。
由於提前