Yes, it was the "()" :$ for "toLowerCase" Good idea for the updateTask, but I can't put the same ldap-dst-conn in both <ldapSourceService> and <ldapDestinationService>. Because : "ERROR - org.lsc.exception.LscConfigurationException: javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; systemId: file:/etc/lsc/lsc.xml; lineNumber: 301; columnNumber: 33; cvc-id.2 : Occurrences multiples de la valeur d'ID 'ldap-dst-service'.] org.lsc.exception.LscConfigurationException: javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; systemId: file:/etc/lsc/lsc.xml; lineNumber: 301; columnNumber: 33; cvc-id.2 : Occurrences multiples de la valeur d'ID 'ldap-dst-service'.] " I tried to add the same ldap connection with an other name but we obviously can have only 2 connections (or I had make a mistake somewhere again XD). And I want to update the gid from my OpenLDAP to this OpenLDAP.
And for information, is the tasks order matter when I type the lsc command "lsc -c Task1 Task2", will it make the task1 before the task2 to or do I have to launch task1 then task2 in different command ? 2012/11/8 Clément OUDOT <[email protected]> > > > 2012/11/8 Emeric Million <[email protected]> > >> I tried the ".toLowerCase" but I've got this error : (I change values for >> privacy but I kept the "case sensitive") >> " >> nov. 08 09:43:23 - ERROR - Error while adding entry >> cn=USER,ou=site,ou=comptes,dc=MyDomain,dc=int in directory >> :javax.naming.InvalidNameException: cn=TROUDER,ou=dcn,ou=comptes: [LDAP: >> error code 64 - value of naming attribute 'cn' is not present in entry]; >> remaining name 'cn=USER,ou=site,ou=comptes' >> nov. 08 09:43:23 - ERROR - Error while synchronizing ID >> cn=USER,ou=site,ou=comptes,dc=MyDomain,dc=int: java.lang.Exception: >> Technical problem while applying modifications to the destination >> dn: cn=USER,ou=dcn,ou=comptes,dc=nomeris,dc=int >> changetype: add >> uid: USER >> mail: [email protected] >> sn: USER >> cn:: >> amF2YS7sYW5nLlN0cmluZyB0b0xvd2VyR2F0ZSgpCmphdmEubGFuZy5TdHJpbCccgdG9Pb3dlckNhc2UoamF2YS51dGlsLkxvY2FsZSkK >> gidNumber: 1359 >> uidNumber: 1360 >> >> objectClass: organizationalPerson >> objectClass: person >> objectClass: posixAccount >> objectClass: shadowAccount >> objectClass: inetOrgPerson >> objectClass: top >> homeDirectory: /home/USER >> " >> I also tried to add it to the : "<mainIdentifier>"cn=" + >> srcBean.getDatasetFirstValueById("cn").toLowerCase + >> ",ou=site,ou=comptes,dc=MyDomain,dc=int"</mainIdentifier> >> >> But : >> "ERROR - Error while adding entry cn=function toLowerCase() {/* >> java.lang.String toLowerCase() >> java.lang.String toLowerCase(java.util.Locale) >> */} >> ,ou=dcn,ou=comptes,dc=nomeris,dc=int in directory >> :javax.naming.InvalidNameException: "cn=function toLowerCase() {/* >> java.lang.String toLowerCase() >> java.lang.String toLowerCase(java.util.Locale) >> */} >> ,ou=dcn,ou=comptes": [LDAP: error code 64 - value of naming attribute >> 'cn' is not present in entry]; remaining name '"cn=function toLowerCase() >> {/* >> java.lang.String toLowerCase() >> java.lang.String toLowerCase(java.util.Locale) >> */} >> ,ou=dcn,ou=comptes"' >> nov. 08 09:50:20 - ERROR - Error while synchronizing ID cn=function >> toLowerCase() {/* >> java.lang.String toLowerCase() >> java.lang.String toLowerCase(java.util.Locale) >> */} >> >> ,ou=site,ou=comptes,dc=MyDomain,dc=int: java.lang.Exception: Technical >> problem while applying modifications to the destination >> dn:: >> Y249ZnVuY3Rpb24gdG9Mb3dlckNhc2UoKSB7LamF2YS5sYW5nLlNcmluZyB0b0xvd2VyQ2FzZSgpCmphdmEubGFuZy5TdHJpbmcgdG9Mb3dlckNhc2UoamF2YS51dGlsLkxvY2FsZSkKKi99CixvdT1kY24sb3U9Y29tcHRlcyxkYz1ub21lcmlzLGRjPWludA== >> changetype: add >> uid: USER >> mail: [email protected] >> sn: USER >> cn:: >> amF2YS5sYW5nLlN0cmluZyB0b0xvd2VyQ2FzZSgpC44fazef567mEubGFuZy5TdHJpbmcgdG9Mb3dlckNhc2UoamF2YS51dGlsLkxvY2FsZSkK >> gidNumber: 1374 >> uidNumber: 1376 >> >> objectClass: organizationalPerson >> objectClass: person >> objectClass: posixAccount >> objectClass: shadowAccount >> objectClass: inetOrgPerson >> objectClass: top >> homeDirectory: /home/USER >> " >> >> > > > Try with toLowerCase() intead of toLowerCase > > > > >> And by the way :p I tried to keep the same uidNumber and gidNumber but >> it didn't work. (as you can see). >> >> " >> <dataset> >> <name>gidNumber</name> >> <policy>KEEP</policy> >> <createValues> >> >> <string>SequencesFactory.getInstance(ldap.getJndiServices()).getCurrentValue("cn=uidNumberSequence,ou=Sequences,ou=HiddenTree,dc=MyDomain,dc=int","serialNumber")</string> >> </createValues> >> </dataset> >> >> >> <dataset> >> <name>uidNumber</name> >> <policy>KEEP</policy> >> <createValues> >> >> <string>SequencesFactory.getInstance(ldap.getJndiServices()).getNextValue("cn=uidNumberSequence,ou=Sequences,ou=HiddenTree,dc=MyDomain,dc=int","serialNumber")</string> >> </createValues> >> </dataset> >> " >> >> I tried to put uidNumber before gidNumber dataset but it doesn't work >> either... Any idea ? :s >> > > > With LSC we cannot tell which attribute will be synchronized first, so you > can't use Sequences and get the same value for 2 different attributes. You > can create a second task that will update gidNumber with uidNumber value. > > -- MILLION Emeric
_______________________________________________________________ Ldap Synchronization Connector (LSC) - http://lsc-project.org lsc-users mailing list [email protected] http://lists.lsc-project.org/listinfo/lsc-users

