簡體   English   中英

InitialDirContext.search()錯誤的結果

[英]Wrong result with InitialDirContext.search()

我現在已經嘗試使用兩個不同的庫將其工作兩天,但是它只是不想做我想做的事情。 所以這是問題所在:

我正在嘗試使用Java加載ldap條目,而我正在使用“ org.ietf.ldap” -Library。 沒問題,我可以從ldap中獲得單個條目,並且運行良好,但是通過特殊查詢,我只能從ldap中獲得一個條目,但是應該有15個條目。

這是我的代碼:


public void getEntries (String searchDN, int scope, InitialDirContext conn, String attributeName, String attributeValue) {
        List ansp = new ArrayList();
        final String QUERY = "cpMemDN=cn=usuid,ou=EMP,ou=COMPANY,o=META";
                    searchDN = "ou=SUPPORT, ou=ROLES, ou=SERVICES, ou=COMPANY, o=META";
        SearchControls ctrl = new SearchControls();
        ctrl.setSearchScope(SearchControls.SUBTREE_SCOPE);
        NamingEnumeration enumeration = null;

    try {
        enumeration = context.search(searchDN, QUERY, ctrl);
    } catch (NamingException e) {
        e.printStackTrace();
    }
    Set<String> cns = new HashSet<String>();
    try {
              while (enumeration.hasMore()) {
            SearchResult result = (SearchResult) enumeration.next();

        }
    } catch (NamingException e) {
        e.printStackTrace();
    }

}

所以我怎么說,該枚舉只包含一個條目,而不是15個條目(已通過LDAPBrowser檢查)。 我還嘗試通過另一個查詢(cn = *)獲取多個條目,並且它起作用了,我得到了多個條目,但是由於它與LDAPBrowser一起使用,查詢不是問題。

有任何想法嗎?

Okey現在可以使用相同的代碼工作,僅嘗試了50次哈哈。 奇怪的事情,但是解決了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM