我遇到了 RMI 的问题。情况是这样的:我有一个暴露 EJB 对象的 JBOSS 4.2.2 服务器,在不同的服务器中有一个客户端,运行 tomcat,它使用 RMI 调用 JBoss 上的 EJB。当JBoss抛出异常并传播到客户端时,会出现问题,因为部分异常不在tomcat的classpath中,所以会发生RMI异常。我们注意到 RMI 尝试从服务器加载类,但我们没有设置 codebase 参数,所以它失败了。
问题是响应可能需要大约 2 分钟。如果我们使用属性“useCodeBaseOnly=true”启动 tomcat,响应会立即发生,如果我们将缺少的类放在 tomcat 上也会发生同样的情况。如果我在本地测试情况(同一台机器上的 jboss+tomcat),响应不会花费太多时间。如果类不可用,UrlClassLoader 是否有类似 Timeout 的返回?,什么可能导致响应缓慢?
谢谢。