JRE7 上的 JNDI 命名异常

JNDI naming exception on JRE7

我们遇到了一个问题,我们在 JDK 6 中编写了代码库。现在我们正在迁移到 JRE-7 。这最终意味着我们在 JDK-6 中使用 JRE -7 编译了 运行 代码。除了 JNDI 之外,一切都运行良好。我们遇到以下异常。

2015-05-25 09:44:41,769 ERROR ne.LdapNeNotifListener - NamingExceptionEvent recieved from ABC:
javax.naming.NamingException: LDAP response read timed out, timeout used:-1ms.
        at com.sun.jndi.ldap.Connection.readReply(Connection.java:483)
        at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:639)
        at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:607)
        at com.sun.jndi.ldap.LdapCtx.getSearchReply(LdapCtx.java:1919)
        at com.sun.jndi.ldap.LdapNamingEnumeration.getNextBatch(LdapNamingEnumeration.java:129)
        at com.sun.jndi.ldap.LdapNamingEnumeration.hasMoreImpl(LdapNamingEnumeration.java:216)
        at com.sun.jndi.ldap.LdapNamingEnumeration.hasMore(LdapNamingEnumeration.java:189)
        at com.sun.jndi.ldap.NamingEventNotifier.run(NamingEventNotifier.java:134)
        at java.lang.Thread.run(Thread.java:745)

根据 JAVA 文档,我们可以看到超时为 -1,因此是无限的。 不确定是什么导致了这里的问题。

如有任何帮助,我们将不胜感激。

我刚刚下载并测试了 JRE 版本 7u80。

这里一切正常。我没有看到任何异常。

导致问题的是低于或等于 7u79 的 JRE 版本

是的,它适用于最新的 JRE 版本 7u80。还观察到仅在处理批量数据时会发生此错误。

有没有人注意到相同的用例?

会不会是这个问题? Oracle 表示已在 7 update 91 中修复,但我不能确定。解决日期和其他反向移植与您的报告大致相同。 http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8081560