Cl?ment OUDOT a ?crit :
>> Yes, the use of employeeNumber as pivot attribute doesn't a good idee...
>>
>>
>> I change it by uid attribute.
>>
>>
>> I have changed too lsc.tasks.salaries.srcService.filterAll to have only
>> entries of zimbra with a valid uid like this :
>>
>>
>> lsc.tasks.salaries.srcService.filterAll =
>> (&(objectClass=organizationalPerson) (uid=*))
>>
>>
>> Now i have a problem when i run :
>>
>> ant lsc::synchronize -Dsynchronize.parameters="-c all -s all"
>>
>> the reponse is :
>>
>> Buildfile: build.xml
>>
>> lsc::init:
>>
>> lsc::prepare-env:
>> [echo] Copying xml and properties files
>> [copy] Copying 1 file to
>> /home/pascal/lsc/lsc-salarie2-z2ldap/target/classes
>>
>> lsc::compile-resources:
>> [echo] Compiling resources
>>
>> lsc::compile-app:
>>
>> lsc::synchronize:
>> [java] 0 [main] WARN
>> org.lsc.SimpleSynchronize.launchTask(SimpleSynchronize.java:230) -
>> Starting sync for salaries
>> [java] 586 [main] ERROR
>> org.lsc.jndi.JndiServices.apply(JndiServices.java:554) - Error while
>> modifying directory on entry
>> uid=,ou=Salaries,o=fal44,o=cdr44,dc=centrederessources44,dc=org / [Add
>> attribute: objectclass: top, shadowAccount, inetOrgPerson, Add
>> attribute: sn: Maurieras, Add attribute: cn: Pascal Maurieras]
>> [java] javax.naming.InvalidNameException:
>> uid=,ou=Salaries,o=fal44,o=cdr44: [LDAP: error code 34 - invalid DN];
>> remaining name 'uid=,ou=Salaries,o=fal44,o=cdr44'
>> [java] at
>> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2932)
>> [java] at
>> com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2746)
>> [java] at
>> com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:779)
>> [java] at
>> com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:319)
>> [java] at
>> com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:248)
>> [java] at
>> javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:183)
>> [java] at org.lsc.jndi.JndiServices.apply(JndiServices.java:513)
>> [java] at
>> org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:414)
>> [java] at
>> org.lsc.SimpleSynchronize.launchTask(SimpleSynchronize.java:280)
>> [java] at
>> org.lsc.SimpleSynchronize.launch(SimpleSynchronize.java:172)
>> [java] at org.lsc.Launcher.run(Launcher.java:128)
>> [java] at org.lsc.Launcher.main(Launcher.java:111)
>> [java] 2213 [main] ERROR
>> org.lsc.AbstractSynchronize.logActionError(AbstractSynchronize.java:475)
>> - Erreur rencontr?e sur l'identifiant
>> uid=,ou=Salaries,o=fal44,o=cdr44,dc=centrederessources44,dc=org:
>> [java]
>> [java] dn:
>> uid=,ou=Salaries,o=fal44,o=cdr44,dc=centrederessources44,dc=org
>> [java] changetype: add
>> [java] objectclass: top
>> [java] objectclass: shadowAccount
>> [java] objectclass: inetOrgPerson
>> [java] sn: Maurieras
>> [java] cn: Pascal Maurieras
>> [java]
>> ...
>>
>>
>> The method srcBean.getAttributeValueById("uid") seems doesn't work in
>> lsc.tasks.salaries.dn ?
>>
>>
>> My new conf is :
>>
>>
>> lsc.tasks.salaries.type = ldap2ldap
>> lsc.tasks.salaries.srcService.pivotAttrs = uid
>> lsc.tasks.salaries.srcService.filterId =
>> (&(objectClass=organizationalPerson)(uid={uid}))
>> lsc.tasks.salaries.srcService.filterAll =
>> (&(objectClass=organizationalPerson) (uid=*))
>> lsc.tasks.salaries.srcService.baseDn = ou=people
>> lsc.tasks.salaries.srcService.attrs = uid cn sn givenName mail objectClass
>> lsc.tasks.salaries.srcService = org.lsc.jndi.SimpleJndiSrcService
>> lsc.tasks.salaries.object = org.lsc.objects.organizationalPerson
>> lsc.tasks.salaries.dstService.pivotAttrs = uid
>> lsc.tasks.salaries.dstService.filterId =
>> (&(objectClass=inetOrgPerson)(uid={uid}))
>> lsc.tasks.salaries.dstService.filterAll = (objectClass=inetOrgPerson)
>> lsc.tasks.salaries.dstService.baseDn = ou=Salaries,o=fal44,o=cdr44
>> lsc.tasks.salaries.dstService.attrs = uid cn sn givenName mail objectClass
>> lsc.tasks.salaries.dstService = org.lsc.jndi.SimpleJndiDstService
>> lsc.tasks.salaries.dn = "uid=" + srcBean.getAttributeValueById("uid") +
>> ",ou=Salaries,o=fal44,o=cdr44,dc=centrederessources44,dc=org"
>> lsc.tasks.salaries.bean = org.lsc.beans.inetOrgPersonBean
>> lsc.tasks = salaries
>>
>>
>>
>
>
>
> Hello,
>
> it seems that srcBean.getAttributeValueById("uid") returns nothing, so DN
> cannot be set. Are you sure your entry in source directory has a value in
> uid?
>
> Cl?ment.
>
>
>
>
Yes uid has a value. The entrie in source directory of zimbra is :
dn: uid=pascal.maurieras,ou=people,dc=nordet,dc=org
cn: Pascal Maurieras
displayName: Pascal Maurieras
givenName: Pascal
mail: pascal.maurieras at nordet.org
objectClass: organizationalPerson
objectClass: zimbraAccount
objectClass: amavisAccount
sn: Maurieras
uid: pascal.maurieras
zimbraId: f3b8699c-1fe9-4450-a672-030c91fbfc22
zimbraMailDeliveryAddress: pascal.maurieras at nordet.org
zimbraMailHost: mail.nordet.org
zimbraMailStatus: enabled
zimbraMailTransport: lmtp:mail.nordet.org:7025
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.lsc-project.org/pipermail/lsc-users/attachments/20090624/dbd1fa0c/attachment-0001.htm>