问题标签 [rmi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1724 浏览

java - java RMI 通过 SSH v2 协议

如何通过 SSH v2 协议实现 java RMI。这可能吗?如果不可能,那么我可以使用原始套接字通信来实现吗?只是我想通过 RMI 传输我的数据,但它应该被加密为 SSH v2 数据包。

0 投票
1 回答
700 浏览

java - RMI 公开服务中的引用应该是暂时的吗?

我在 Spring 上使用 RMI 公开了一些服务。每个服务都依赖于执行实际处理工作的其他服务 bean。例如:

我的 AccountRmiServiceImpl 看起来像这样:

我的问题是:可以AccountServiceImpl在不实现Serializable标记接口的情况下创建吗?如果是这种情况,那么它的引用AccountRmiServiceImpl应该是暂时的。这意味着它不会被序列化并传输到进行 RMI 调用的客户端。是否可以?

0 投票
3 回答
278 浏览

java - 如何在java中存储rmi连接?

我这里有问题。我有一个通过 RMIA调用的客户端代码。B之后,我通过 JMS 向实际实现发送队列请求C。但是,我不知道A. 有没有办法以某种方式存储连接数据,以便我可以A稍后返回数据?

基本上事情是B可以有大量的请求并且需要将其同步到请求者。怎么做?

例子:

A:

乙:

C:

0 投票
2 回答
1518 浏览

java - RMI 和 Web 服务都使用套接字连接吗?

在另一个问题中,我担心使用需要五分钟才能完成的 Web 服务。我正在考虑在这个用例中使用 RMI 而不是 Web 服务..

但归根结底,Web 服务和 RMI 是否都使用 TCP 套接字进行底层连接?是否有任何理由为什么需要 5 分钟的 Web 服务调用不如需要相同时间的 RMI 请求稳定?

请注意,在我们的例子中,我们谈论的是内部应用程序通信。


更新:这个问题源于我担心我们会遇到连接断开或其他需要 3-5 分钟才能完成的 Web 服务问题。这种担心可能完全不合理 - 我的另一个问题的响应者表示,如果您同时控制客户端和服务器,您应该没问题。但我只是想更详细地了解为什么使用 Web 服务实现而不是 RMI 实现更不可能出现 5 分钟通话的断开连接。如果他们都依赖套接字连接,那么这可以解释为什么没有区别......

0 投票
3 回答
1270 浏览

java - Class.forName 在 Java RMI 调用中不起作用

Java RMI 会对下面这行代码产生什么影响?

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

它在 RMI 呼叫中对我不起作用。我是java和RMI的新手,所以请详细说明你的答案。

编辑:

我已经粘贴了代码。你能告诉我如何获得完整的堆栈跟踪吗?

这是我用来运行我的代码的批处理文件

% 我在我的源代码目录

0 投票
2 回答
7151 浏览

java - 如何从接口生成 JAVA RMI 存根和骨架?

是否有我错过的操作(菜单/快捷方式)或插件添加到 Eclipse 3.5 的基本 JavaEE 发行版中,允许生成/重新生成通常从命令行调用 rmic 完成的文件?

我知道我正在寻找一个免费的“RMI Plug-in for Eclipse version 2.0” 。

0 投票
4 回答
29439 浏览

java - Java RMI - 客户端超时

我正在使用 Java RMI 构建分布式系统,它必须支持服务器丢失。

如果我的客户端使用 RMI 连接到服务器,如果该服务器出现故障(例如电缆问题),我的客户端应该得到一个异常,以便它可以连接到其他服务器。

但是当服务器宕机时,我的客户端什么也没有发生,他一直在等待回复。我该如何设置超时?

0 投票
5 回答
110789 浏览

java - 与 localhost 的 Rmi 连接被拒绝

我在使用 java rmi 时遇到问题:

当我尝试运行我的服务器时,我得到一个 connectException(见下文)。

执行 rebind 方法时发生异常:

当使用 rmi://localhost:2020/RemoteDataPointHandler 代替时,它也不起作用。使用默认端口也不起作用。我也尝试使用 127.0.0.1 ip-address,但效果相同。

我的运行时参数:

0 投票
2 回答
1287 浏览

java - 远程和动态代理

  1. 我知道,曾经,开发远程代理包括生成存根/骨架,尽管由于反射,今天不再需要。(动态代理)

我想清楚地解释反射为什么以及如何取代这种需求。例如,我知道存根是为了处理网络上的通信(如果远程对象在另一台计算机上),加上负责序列化/反序列化等......现在谁负责?

也许我把动态代理的概念都弄错了。

  1. 此外,我阅读了有关 Java 和 Rmi 的主题,我将如何在 C++ 中实现远程代理,我可能可以使用 DCOM,还有另一种可能更简单的方法吗?(我是否需要 DCom 中的存根/骨架或不再像 java 一样?)

谢谢

0 投票
8 回答
3451 浏览

java - 序列化后在 ArrayList 上调用 equals

在通过 RMI 传输的对象上,我遇到了一个与 equals 相关的奇怪问题。这已经让我头疼了几天,我想知道是否有人可以帮助阐明这个问题。

我有一个车库类(如果它相关,它也是一个 JPA 实体),我将它推送到一个名为 X over RMI 的 java 进程(所以这个对象正在被序列化)。Garage 对象存储了一个名为 Car 的对象列表(也是 JPA 实体),这些对象也是可序列化的。

Garage 上的 equals 方法基本上是在其汽车列表(一个 ArrayList)上调用 equals

当我在 java 进程中调用 equals 时,由于某种原因,它不会像我期望的那样在列表上调用 equals,我希望它会在列表中的所有 Cars 上调用 equals 以检查列表是否相等,但它不会这样做。

奇怪的是,当单元测试时,它确实对 Cars ArrayList 的所有成员调用 equals。我什至将这些对象序列化为我的单元测试的一部分,这也很有效。有任何想法吗?我希望我能解决问题,随时要求任何信息来澄清任何事情。

编辑:我几乎可以肯定它的 ArrayList 很奇怪,因为当我在我的对象中手动执行 equals 而不是在汽车列表上调用 equals 我在汽车列表上做了一个 foreach 循环并在每辆汽车上调用 equals (就像我预期的 ArrayList equals无论如何都要做,它按预期工作)