0

首先,我对 EJB 不是很了解,只是想了解这里发生了什么。

我有一个通过 EJB 接口调用后端的服务。如果后端宕机,则服务在后端宕机时开始抛出以下异常,然后在它恢复后,它会在第二天偶尔继续。但是,它是间歇性的。并非一切正常,但有时我们会收到以下错误。就好像我们有一些与该后端的 ejb 连接在后端出现故障时会变得混乱,而有些则不会。

(更改方法/接口名称,因为它们特定于我的项目)

Remote EJB method: someMethod called on interface: com.someInterface failed.
Cause: java.rmi.NoSuchObjectException: The object identified by: '301' could not be found.
Either it was has not been exported or it has been collected by the distributed garbage collector.

我假设当后端出现故障时,EJB 连接不再有效,只是需要一段时间来清除那个坏连接?

有什么建议、想法吗?希望能帮助您更好地了解正在发生的事情。

4

1 回答 1

0

信息很清楚。您用来与 EJB 对话的存根是陈旧的,即它指的是不再存在的对象,无论是通过 DGC、故意取消导出还是整个服务器重新启动。这里的缓解措施是通过您所做的任何方式重新获取存根,然后再试一次。

于 2013-03-19T04:43:39.677 回答