On Mon, Nov 3, 2008 at 11:29 PM, Nuno <nunogt(a)gmail.com> wrote:
I'm using Novell's JLDAP Java library (available from
http://www.openldap.org/jldap/) to talk to my OpenLDAP server from an
application developed in-house. It's been a pretty straightforward ride: I
can list users, change attributes, etc. There is, however, one thing I
haven't yet been able to implement - create a new user that inherits the
objectClass "posixAccount". According to Novell's code samples, to create
such an entry, one would do:
LDAPEntry entry = new LDAPEntry(cn);
LDAPAttributeSet attrSet = new LDAPAttributeSet();
// Object class descriptions
attrSet.add(new LDAPAttribute("objectclass", new
String("inetOrgPerson")));
you have not added the posixAccount objectclass (or the object that defines
the attributes it complains about), like :
// Object class descriptions
attrSet.add(new LDAPAttribute("objectclass", new
String("posixAccount")));
attrSet.add(new LDAPAttribute("objectclass", new
String("inetOrgPerson")));
Each objectclass value you add expands the set of allowable attributes that
you may (in some cases, must) use, by the number of attributes defined by
that object.
If you dont include the required objecttype(s), you cannot use the
attributes they define, which is what the error is about.
eg: posixAccount allows gidNumber, uidNumber, etc.,
inetOrgPerson allows userPassword, descrption etc.,
Cheers
Brett