# Getting to grips with ActiveLDAP

**URL:** <https://www.ruby-forum.com/t/getting-to-grips-with-activeldap/82981>\
**Category:** Ruby\
**Created:** [January 22, 2007, 9:32pm UTC](https://www.ruby-forum.com/t/getting-to-grips-with-activeldap/82981 "2007-01-22T21:32:40Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![fox](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/c5a1d2/32.png) [@fox](https://www.ruby-forum.com/u/fox)\
**Post date:** [January 22, 2007, 9:32pm UTC](https://www.ruby-forum.com/t/getting-to-grips-with-activeldap/82981/1 "2007-01-22T21:32:40Z")

</div>

hi all,  
I’m starting an application which uses OpenLDAP as the backend.

I’ve installed activeldap and its requirements, however i’m at a loss  
for  
how to get it to work.  
From looking at various examples, I’ve put this code together:

```
  1 require 'rubygems'
  2 require_gem 'log4r'
  3 require_gem 'ruby-activeldap'
  4
  5 class User < ActiveLdap::Base
  6 ldap_mapping

```

:dn\_attribute=\>‘uid’,:prefix=\>‘dc=office’,:classes=\>[‘staffAccount’]  
7 end  
8 ActiveLdap::Base.establish\_connection(  
9 :host =\>“192.168.1.27”,  
10 :port =\>389,  
11 :bind\_dn =\>“cn=root,dc=office”,  
12 :password=\>“secret”)  
13  
14 user = User.find(“admin@office\*”)  
15 puts user.displayName  
16 user.displayName = “testing”  
17 unless user.save  
18 puts “failed”  
19 puts user.errors.full\_messages  
20 exit 1  
21 end

everything goes ok upto line 15 - it prints the displayName of that  
record,  
and i can print any other attributes. however, when i try to change  
anything, i get this:  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/adaptor/ldap.rb:288:in  
`operation': No such object (LDAP::NoSuchObject) from /usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/timeout.rb:15:in`call’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/timeout.rb:15:in  
`alarm' from /usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/adaptor/base.rb:19:in`with\_timeout’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/adaptor/ldap.rb:296:in  
`with_timeout' from /usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/adaptor/ldap.rb:284:in`operation’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/adaptor/ldap.rb:269:in  
`modify' from /usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/base.rb:392:in`modify’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/base.rb:1337:in  
`update_without_callbacks' from /usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/base.rb:1298:in`prepare\_data\_for\_saving’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/base.rb:1333:in  
`update_without_callbacks' from /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.1/lib/active_record/callbacks.rb:267:in`update’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/base.rb:1279:in  
`create_or_update_without_callbacks' from /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.1/lib/active_record/callbacks.rb:242:in`create\_or\_update’  
from  
/usr/lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active\_ldap/base.rb:765:in  
`save_without_validation' from /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.1/lib/active_record/validations.rb:752:in`save’

I’m not sure what “No such object” is refering to? any thoughts?

thanks,  
Ol.
