如何在 Unboundid LDAP SDK 中重用 LDAP 连接?

How to reuse an LDAP connection in Unboundid LDAP SDK?

我尝试使用以下代码在 Unboundid LDAP SDK 中重用 LDAP 连接:

if  (ldapConnection.isConnected()) {
    //Connection is still connected.
} else {
    try {
        // Connection is not connected. Try to reconnect
        ldapConnection.reconnect();
    } catch (LDAPException e) {
    }
}

不幸的是,ldapConnection.isConnected() returns 正确,我稍后在代码中遇到异常。

我做错了什么? 如何在 Unboundid LDAP SDK 中重用 LDAP 连接?

为什么使用 ldapConnection.reconnect() 方法与仅使用 BindResult bindResult = ldapConnection.bind(bindRequest);

您也可以考虑使用“连接池,即使该池只有一个连接。连接池对连接管理和处理已失效的连接有很好的支持,它们还提供了更好的选择故障转移,因为它们可以配置有关多个服务器的信息(通过 ServerSet API),以便选择最佳服务器。” (来自 http://sourceforge.net/p/ldap-sdk/discussion/1001257/thread/2cd4e0de/#14b5

-吉姆