java - 注册表 RMI 找不到 stub 类

标签 java rmi

当我运行 RMI 应用程序时,它正在工作,但是当我在具有不同地址的另一台 PC 上尝试我的代码时,我收到此错误:

java.rmi.UnmarshalException: error unmarshalling return; nested exception is:

java.lang.ClassNotFoundException: zz.INTERFCE at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source) at java.rmi.Naming.lookup(Unknown Source) at CLIENT$2.actionPerformed(CLIENT.java:112) . . .

好的,这是我的代码: 服务器端

                         try {
                         System.setProperty("java.security.policy","C:\\DERNIER\\src\\security.policy");
      System.setSecurityManager(new RMISecurityManager());

                    registre = LocateRegistry.createRegistry(Integer.parseInt(textport.getText()));
                    IMPLIEMENT obj=new IMPLIEMENT();
                    registre.rebind("Hello1",obj);
                    list1.add("serveur is lisning");
                    cpt++;
                } catch (RemoteException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

客户端侧

                try {

                     user=txtUN.getText();
                    client=new CLIENT_IMPLMENT(rsa,user);

                     hello= (INTERFCE) Naming.lookup("rmi://"+textadressz.getText()+":"+Integer.parseInt(txtport.getText())+"/Hello1");         
                     hello.connecté((CLIENT_INTERFCE)client,user,rsa.getN(),rsa.getE());
                     cpt++;

                } catch (RemoteException | MalformedURLException | NotBoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

PS:我的应用程序在 localhoste 中工作正常

最佳答案

您错误地描述了问题。未找到的类是 zz.INTERFCE。这不是 stub 。它看起来实际上是一个远程接口(interface)。需要部署在客户端。否则客户端无论如何都无法用它做任何事情。

关于java - 注册表 RMI 找不到 stub 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29909570/

相关文章:

java - 当文件确实存在时抛出 FileNotFoundException

java - 在 OpenShift 云中运行一个简单的 Java 程序

在 != 机器上使用时创建连接时发生 Java RMI 异常

java - 如何在 NetBeans 中运行 RMI?

java - 在客户端上生成 RMI stub

java - Heroku 上未找到 Maven - 如何运行我的 Java 应用程序?

java - 将当前日期时间(实时)与上次修改的文件进行比较

c# - 相当于 C# 中的 -javaagent?或者: ways to use a java framework in C#

java - 使用java的stream api进行前馈计算

java - 编译 Java 文件时出现错误无法找到符号