directory-api mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "George S." <geor...@mhsoftware.com>
Subject Re: LdapConnection.search() Help
Date Tue, 06 Mar 2018 23:00:36 GMT
Thanks for responding.

I have been using SearchScope.SUBTREE, and it makes no difference.


On 3/6/2018 3:51 PM, Emmanuel Lécharny wrote:
> Hi,
>
> are you sure you have entries below the point you are searching from ?
> You are doing a search using a ONE_LEVEL scope, which will return oly
> the children entries.
>
>
> Le 06/03/2018 à 22:32, George S. a écrit :
>> I'm trying to use the API library and i'm running into a problem. I'm
>> trying to do a search (see method below). Using this bound connection, I
>> can do a lookup. For example, I can do .lookup(base,"objectClass"),
>> .lookup(base,"dc"), etc. However search isn't working.
>>
>> Can anyone give me an idea of what I'm doing wrong. I've looked through
>> the docs and I'm just not getting it.
>>
>> public  Collection<Entry>search(String  base,String...
>> attributeNames)throws  LdapException{
>>
>> if  (attributeNames.length ==0){
>>      attributeNames =new  String[]{
>> "distinguishedName","objectClass","name",
>> prop.getProperty("emailAddress","mail")};
>> }
>> Collection<Entry> entries =new  ArrayList<>();
>> // LC is LdapNetworkConnection
>>   EntryCursor cursor = lc.search(new  Dn(base),"(objectclass=*)",
>> SearchScope.ONELEVEL,attributeNames);
>>
>> if  (isDebugMode()){
>>      System.err.print("search(\""+base+"\"");
>>      for  (String  s : attributeNames){
>>          System.err.print(",\""+s+"\"");
>>      }
>>      System.err.println(");");
>>      System.err.println("cursor.available()="  + cursor.available());
>> }
>>
>> if  (cursor.available()){
>>      for  (Entry entry: cursor){
>>          entries.add(entry);
>>      }
>> }  else  {
>>      if  (isDebugMode()){
>>          System.err.println("SearchResults came back null!");
>>      }
>> }
>> try  {
>>      cursor.close();
>> }  catch  (IOException ioeClose){
>>      ioeClose.printStackTrace(System.err);
>> }
>> return  entries;
>> }
>>
>> The output is:
>>
>> getAttribute() entry=[Entry
>>      dn: DC=somedistrict,DC=k12,DC=local
>>
>>      dc: somedistrict
>> ]
>>          dc
>>                  somedistrict
>>
>> search("DC=somedistrict,DC=k12,DC=local","objectClass");
>> cursor.available()=false
>> SearchResults came back null!
>>
>>   
>>

-- 
George S.
*MH Software, Inc.*
Voice: 303 438 9585
http://www.mhsoftware.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message