в чайнике Pentaho вставьте много объектных классов в шаг ldap Output

Я вставляю в свой LDAP пользователя со следующей структурой.

СТРУКТУРА LDAP

Я использую шаг вывода LDAP следующим образом.

ШАГ LDAP

Но при попытке доказать преобразование пришлите мне следующую ошибку:

2015/05/08 16:04:03 - INSERT USR LDAP.0 - ERROR (version 5.0.1-stable, build 1 from 2013-11-15_16-08-58 by buildguy) : Exception : 
2015/05/08 16:04:03 - INSERT USR LDAP.0 - Error inserting for entry with DN = [uid=mark1,ou=users,dc=ldap,dc=test,dc=org]!
2015/05/08 16:04:03 - INSERT USR LDAP.0 - [LDAP: error code 65 - no structural object class provided]
2015/05/08 16:04:03 - INSERT USR LDAP.0 - ERROR (version 5.0.1-stable, build 1 from 2013-11-15_16-08-58 by buildguy) : org.pentaho.di.core.exception.KettleException: 
2015/05/08 16:04:03 - INSERT USR LDAP.0 - Error inserting for entry with DN = [uid=mark1,ou=users,dc=ldap,dc=test,dc=org]!
2015/05/08 16:04:03 - INSERT USR LDAP.0 - [LDAP: error code 65 - no structural object class provided]
2015/05/08 16:04:03 - INSERT USR LDAP.0 - 
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at org.pentaho.di.trans.steps.ldapinput.LDAPConnection.insert(LDAPConnection.java:354)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at org.pentaho.di.trans.steps.ldapoutput.LDAPOutput.processRow(LDAPOutput.java:251)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at org.pentaho.di.trans.step.RunThread.run(RunThread.java:60)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at java.lang.Thread.run(Thread.java:722)
2015/05/08 16:04:03 - INSERT USR LDAP.0 - Caused by: javax.naming.directory.SchemaViolationException: [LDAP: error code 65 - no structural object class provided]; remaining name 'uid=mark1,ou=users,dc=ldap,dc=test,dc=org'
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3118)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:811)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:337)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:266)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:254)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:197)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   at org.pentaho.di.trans.steps.ldapinput.LDAPConnection.insert(LDAPConnection.java:351)
2015/05/08 16:04:03 - INSERT USR LDAP.0 -   ... 3 more

Я не понимаю, почему я посылаю эту ошибку, если они нужны всем объектам и атрибутам.


person Elias Vargas    schedule 08.05.2015    source источник


Ответы (1)


я решил эту проблему

Вывод передачи ldap имеет часть, где разделитель для нескольких значений, как вы классы объектов, затем вы отправляете параметр для всех имен объектов, определенных внутри

таким образом:

ObjectClass = "inetOrgPerson;organizationalPerson;person;top;shadowAccount";

Здесь определяется разделитель

LDAP-МУЛЬТИ

person Elias Vargas    schedule 11.05.2015