【问题标题】:JBoss web application not connecting to RMI serverJBoss Web 应用程序未连接到 RMI 服务器
【发布时间】:2013-09-02 04:14:31
【问题描述】:

我有一个在 Apache Tomcat 中运行的 Web 应用程序,它是我运行的 RMI 服务器的客户端,它运行良好。

现在我将该 Web 应用程序迁移到 JBoss 5.1,除了与 RMI 服务器的连接外一切正常,所以我认为问题出在 JBoss 的配置上。

客户端的代码如下:

//RMI
System.setProperty("java.security.policy","file:/C:/policy.txt");
//policy.txt: grant { permission java.security.AllPermission; };

System.setSecurityManager(new RMISecurityManager());

ControladorMails c = null;

try {
    c = (ControladorMails) Naming.lookup("rmi://localhost/GestorMails");
} catch (Exception e) {
    e.printStackTrace();
}

我得到的例外:

java.rmi.ConnectIOException:远程端点的非 JRMP 服务器 在 sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:230) 在 sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184) 在 sun.rmi.server.UnicastRef.newCall(UnicastRef.java:322) 在 sun.rmi.registry.RegistryImpl_Stub.lookup(未知来源) 在 java.rmi.Naming.lookup(Naming.java:84) 在控制器.ControladorUsuarios.addNotificacion(ControladorUsuarios.java:97) 在 dao.TestDAO.main(TestDAO.java:73)

我一直在寻找解决方案,但找不到任何解决问题的方法。可能问题与设置为 1099 的 JNDI 端口有关,我读过 rmiregistry 默认使用 1099。但是我一直在尝试更改它们中的端口,但它不起作用。

谢谢。

【问题讨论】:

    标签: java jboss rmi


    【解决方案1】:

    您遇到的故障根本不在于“RMI 服务器”。它与 RMI 注册表一起使用。您正在使用 Naming.lookup() 您应该使用 JBoss 特定的东西。正如例外所暗示的那样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-02
      • 1970-01-01
      相关资源
      最近更新 更多