Le 07/10/2016 à 10:53, Pape Khaly NIANG a écrit :
Hi all,
Pretty new to lsc, I’m trying to make a synchronization from a
postgresql table names user_ to an ldap directory.
Seems like there is no connection to the database for I have this log
given:
15:42:07,537 |-WARN in ch.qos.logback.classic.LoggerContext[default] -
Resource [logback.xml] occurs at
[jar:file:/usr/lib/lsc/lsc-core-2.1.3.jar!/logback.xml]
15:42:07,719 |-INFO in
ch.qos.logback.classic.joran.action.ConfigurationAction - debug
attribute not set
15:42:07,828 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- About to instantiate appender of type
[ch.qos.logback.core.ConsoleAppender]
15:42:07,838 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- Naming appender as [CONSOLE]
15:42:07,902 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [encoder] on top of the object stack.
15:42:07,930 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [layout] on top of the object stack.
15:42:08,011 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- About to instantiate appender of type
[ch.qos.logback.core.rolling.RollingFileAppender]
15:42:08,016 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- Naming appender as [LSC]
15:42:08,027 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [layout] on top of the object stack.
15:42:08,027 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LSC] - This appender
no longer admits a layout as a sub-component, set an encoder instead.
15:42:08,027 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LSC] - To ensure
compatibility, wrapping your layout in LayoutWrappingEncoder.
15:42:08,027 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LSC] - See also
http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
15:42:08,029 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [filter] on top of the object stack.
15:42:08,038 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [rollingPolicy] on top of the object stack.
15:42:08,050 |-INFO in
ch.qos.logback.core.rolling.FixedWindowRollingPolicy@f35bd
<mailto:ch.qos.logback.core.rolling.FixedWindowRollingPolicy@f35bd> -
Will use gz compression
15:42:08,054 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [triggeringPolicy] on top of the object stack.
15:42:08,059 |-INFO in
ch.qos.logback.core.rolling.RollingFileAppender[LSC] - Active log file
name: /var/log/lsc/lsc.log
15:42:08,059 |-INFO in
ch.qos.logback.core.rolling.RollingFileAppender[LSC] - File property
is set to [/var/log/lsc/lsc.log]
15:42:08,061 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- About to instantiate appender of type [ch.qos.logback.core.FileAppender]
15:42:08,061 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- Naming appender as [LSC_STATUS]
15:42:08,063 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [layout] on top of the object stack.
15:42:08,065 |-WARN in ch.qos.logback.core.FileAppender[LSC_STATUS] -
This appender no longer admits a layout as a sub-component, set an
encoder instead.
15:42:08,065 |-WARN in ch.qos.logback.core.FileAppender[LSC_STATUS] -
To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
15:42:08,065 |-WARN in ch.qos.logback.core.FileAppender[LSC_STATUS] -
See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for
details
15:42:08,065 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [filter] on top of the object stack.
15:42:08,066 |-INFO in ch.qos.logback.core.FileAppender[LSC_STATUS] -
File property is set to [/var/log/lsc/lsc.status]
15:42:08,067 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- About to instantiate appender of type
[ch.qos.logback.core.rolling.RollingFileAppender]
15:42:08,067 |-INFO in ch.qos.logback.core.joran.action.AppenderAction
- Naming appender as [LDIF]
15:42:08,068 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [layout] on top of the object stack.
15:42:08,069 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LDIF] - This appender
no longer admits a layout as a sub-component, set an encoder instead.
15:42:08,069 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LDIF] - To ensure
compatibility, wrapping your layout in LayoutWrappingEncoder.
15:42:08,069 |-WARN in
ch.qos.logback.core.rolling.RollingFileAppender[LDIF] - See also
http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
15:42:08,070 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [filter] on top of the object stack.
15:42:08,070 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [rollingPolicy] on top of the object stack.
15:42:08,070 |-INFO in
ch.qos.logback.core.rolling.FixedWindowRollingPolicy@911387
<mailto:ch.qos.logback.core.rolling.FixedWindowRollingPolicy@911387> -
Will use gz compression
15:42:08,071 |-INFO in
ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing
component [triggeringPolicy] on top of the object stack.
15:42:08,071 |-INFO in
ch.qos.logback.core.rolling.RollingFileAppender[LDIF] - Active log
file name: /var/log/lsc/lsc.ldif
15:42:08,071 |-INFO in
ch.qos.logback.core.rolling.RollingFileAppender[LDIF] - File property
is set to [/var/log/lsc/lsc.ldif]
15:42:08,071 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting level of
logger [org.lsc] to INFO
15:42:08,071 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity
of logger [org.lsc] to true
15:42:08,071 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [LSC] to Logger[org.lsc]
15:42:08,075 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [LSC_STATUS] to Logger[org.lsc]
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting level of
logger [lsc] to INFO
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity
of logger [lsc] to true
15:42:08,076 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [LDIF] to Logger[lsc]
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting level of
logger [communicationLogger] to WARN
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity
of logger [communicationLogger] to true
15:42:08,076 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [CONSOLE] to Logger[communicationLogger]
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting level of
logger [org.apache] to WARN
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity
of logger [org.apache] to true
15:42:08,076 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [CONSOLE] to Logger[org.apache]
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting level of
logger [poolLogger] to WARN
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity
of logger [poolLogger] to true
15:42:08,076 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [CONSOLE] to Logger[poolLogger]
15:42:08,076 |-INFO in
ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level
of ROOT logger to INFO
15:42:08,076 |-INFO in
ch.qos.logback.core.joran.action.AppenderRefAction - Attaching
appender named [CONSOLE] to Logger[ROOT]
oct. 06 15:42:08 - INFO - Reflections took 138 ms to scan 1 urls,
producing 55 keys and 115 values
oct. 06 15:42:09 - INFO - Logging configuration successfully loaded
from /etc/lsc/logback.xml
oct. 06 15:42:09 - INFO - LSC configuration successfully loaded from
/etc/lsc/
oct. 06 15:42:09 - INFO - Connecting to LDAP server
ldap://127.0.0.1:389/dc=cfe,dc=fr as cn=Manager,dc=cfe,dc=fr
oct. 06 15:42:09 - WARN - No clean request has been specified for
task=People. During the clean phase, LSC wouldn't be able to get the
right entries and may delete all destination entries !
oct. 06 15:42:09 - INFO - Starting sync for People
oct. 06 15:42:09 - ERROR - Error getting list of IDs in the source for
task People
oct. 06 15:42:09 - INFO - Starting clean for People
oct. 06 15:42:10 - ERROR - com.ibatis.sqlmap.client.SqlMapException:
There is no statement named null in this SqlMa
My files are like this:
-Lsc.xml:
<lsc xmlns="http://lsc-project.org/XSD/lsc-core-2.1.xsd" revision="0">
<connections>
<ldapConnection>
<name>ldap-src-conn</name>
<url>ldap://127.0.0.1:389/dc=cfe,dc=fr</url>
<username>cn=Manager,dc=cfe,dc=fr</username>
<password>fructueux</password>
<authentication>SIMPLE</authentication>
<referral>IGNORE</referral>
<derefAliases>NEVER</derefAliases>
<version>VERSION_3</version>
<pageSize>-1</pageSize>
<factory>com.sun.jndi.ldap.LdapCtxFactory</factory>
<tlsActivated>false</tlsActivated>
</ldapConnection>
<databaseConnection>
<name>jdbc-dst-conn</name>
<url>jdbc:postgresql://127.0.0.1:5432/lportal</url>
<username>root</username>
<password></password>
<driver>org.postgresql.Driver</driver>
</databaseConnection>
</connections> <tasks>
<task>
<name>People</name>
<bean>org.lsc.beans.SimpleBean</bean>
<databaseSourceService>
<name>postgresql-src-service</name>
<connection reference="jdbc-dst-conn" />
<requestNameForObject>getInetOrgPerson</requestNameForObject>
</databaseSourceService>
<ldapDestinationService>
<name>openldap-source-service</name>
<connection reference="ldap-src-conn" />
<baseDn>ou=people,dc=cfe,dc=fr</baseDn>
<pivotAttributes>
<string>uid</string>
</pivotAttributes>
<fetchedAttributes>
<string>description</string>
<string>cn</string>
<string>sn</string>
<string>objectClass</string>
<string>uid</string>
<string>mail</string> <string>givenName</string>
</fetchedAttributes>
<getAllFilter>(&(objectClass=inetorgperson)(mail=*))</getAllFilter>
<getOneFilter>(&(objectClass=inetorgperson)(mail={mail}))</getOneFilter>
</ldapDestinationService>
<propertiesBasedSyncOptions>
<mainIdentifier>"LOGIN="+srcBean.getDatasetFirstValueById("uid") +
",ou=people,dc=cfe,dc=fr"</mainIdentifier>
<defaultDelimiter>;</defaultDelimiter>
<defaultPolicy>FORCE</defaultPolicy>
<conditions>
<changeId>false</changeId>
</conditions>
</propertiesBasedSyncOptions>
</task>
</tasks>
</lsc>
And my file InetOrgPerson.xml is like this:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="InetOrgPerson">
<select id="getInetOrgPerson" resultClass="java.util.HashMap"
parameterClass="java.util.Map">
Select
screenname as uid,
firstname as cn,
lastname as givenName,
emailaddress as mail
FROM user_ pers
</select>
</sqlMap>
Help would really be appreciated.
Thanks in advance.
Hi,
to work with databaseSourceService, you need at least to define
requestNameForList and requestNameForObject. Define requestNameForClean
if you plan to delete entries in destination (clean phase).
See
http://lsc-project.org/wiki/documentation/latest/configuration/service/sourcesql
--
Clément OUDOT
Consultant en logiciels libres, Expert infrastructure et sécurité
Savoir-faire Linux
137 boulevard de Magenta - 75008 PARIS
Blog: http://sflx.ca/coudot
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org
lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users