Java 从Oracle JDK8迁移到Open jdk11,寻找rmi替代品
我正在从Oracle JDK8迁移到OpenJDK11。我面临exportObject(新Myobj)调用的问题 由于rmi在jdk11中被删除,所以我使用glassfish jars用于PortableRemoteObject来导出和查找远程对象 我正在使用glassfish中的以下JAR来获取openjdk11中缺少的类Java 从Oracle JDK8迁移到Open jdk11,寻找rmi替代品,java,glassfish,rmi,corba,iiop,Java,Glassfish,Rmi,Corba,Iiop,我正在从Oracle JDK8迁移到OpenJDK11。我面临exportObject(新Myobj)调用的问题 由于rmi在jdk11中被删除,所以我使用glassfish jars用于PortableRemoteObject来导出和查找远程对象 我正在使用glassfish中的以下JAR来获取openjdk11中缺少的类 乌姆加皮眼镜鱼 玻璃鱼corba球 javax.transaction.api pfl动态 基本的 glassfish corba内部api pfl-tf.jar 我希
- 乌姆加皮眼镜鱼
- 玻璃鱼corba球
- javax.transaction.api
- pfl动态
- 基本的
- glassfish corba内部api
- pfl-tf.jar
<!-- Ant task for RMIC -->
<target name="rmic">
<taskdef name="rmic"
classname="org.apache.tools.ant.taskdefs.Rmic" />
<rmic classname="com.MyRmiImpl"
base="${classes.dir}"
classpathref="javac.classpath" />
</target>
}。你是如何解决的?@donlys解决了什么?没有问题要解决。我提供的链接证明了这一点。我的问题是如何重写使用PortableRemoteObject的现有代码。narrow@Donlys为什么?注意:此问题基于对错误消息的完全误解
NoSuchObjectException
指的是存根过期,而不是从JDK中完全删除API,它依赖的代码从一开始就基本上毫无意义,是RMI/JRMP和RMI/IIOP的混合体。你应该用新的思路问你的问题,不管它是什么。
static Registry registry;
public static void main(String[] args) {
try {
registry = LocateRegistry.createRegistry(3322);
MyRmiImpl remoteImpl = new MyRmiImpl();
PortableRemoteObject.exportObject(remoteImpl);
Remote objStub = PortableRemoteObject.toStub(remoteImpl);// getting exception at this line
registry.rebind("MyRmiInterface", objStub);
} catch (Exception e) {
e.printStackTrace();
}
}