Bug #56

Quickstart tutorial is broken

Added by Jonathan Clarke about 1 year ago. Updated about 1 year ago.

Status:Closed Start:01/06/2009
Priority:High Due date:
Assigned to:Jonathan Clarke % Done:

100%

Category:Sample
Target version:1.1.0
Problem in version:

Description

On latest code, the quickstart tutorial (http://lsc-project.org/wiki/documentation/quickstart) fails with:

$ ant -Dsynchronize.parameters="-s all" lsc::synchronize
Buildfile: build.xml

lsc::init:

lsc::prepare-env:
     [echo] Copying xml and properties files
     [copy] Copying 1 file to /Users/jclarke/Downloads/lsc-sample-1.1-SNAPSHOT/target/classes

lsc::compile-resources:
     [echo] Compiling resources

lsc::compile-app:
    [javac] Compiling 1 source file to /Users/jclarke/Downloads/lsc-sample-1.1-SNAPSHOT/target/classes

lsc::synchronize:
     [java] 0    [main] WARN   org.lsc.SimpleSynchronize.launchTask(SimpleSynchronize.java:230)   - Starting sync for MySyncTask
     [java] 677  [main] WARN   org.lsc.service.AbstractJdbcService.getListPivots(AbstractJdbcService.java:125)   - Error while looking for the entries list: com.ibatis.common.jdbc.exception.NestedSQLException:   
     [java] --- The error occurred in org/lsc/persistence/xml/InetOrgPerson.xml.  
     [java] --- The error occurred while executing query.  
     [java] --- Check the          SELECT pers.id         FROM INETORGPERSON pers   .  
     [java] --- Check the SQL Statement (preparation failed).  
     [java] --- Cause: java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java] Caused by: java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java] com.ibatis.common.jdbc.exception.NestedSQLException:   
     [java] --- The error occurred in org/lsc/persistence/xml/InetOrgPerson.xml.  
     [java] --- The error occurred while executing query.  
     [java] --- Check the          SELECT pers.id         FROM INETORGPERSON pers   .  
     [java] --- Check the SQL Statement (preparation failed).  
     [java] --- Cause: java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java] Caused by: java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:185)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForList(GeneralStatement.java:123)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:610)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:584)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:101)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:78)
     [java]     at org.lsc.service.AbstractJdbcService.getListPivots(AbstractJdbcService.java:117)
     [java]     at org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:297)
     [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] Caused by: java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java]     at org.hsqldb.jdbc.Util.throwError(Unknown Source)
     [java]     at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(Unknown Source)
     [java]     at org.hsqldb.jdbc.jdbcConnection.prepareStatement(Unknown Source)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     [java]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [java]     at java.lang.reflect.Method.invoke(Method.java:585)
     [java]     at com.ibatis.common.jdbc.SimpleDataSource$SimplePooledConnection.invoke(SimpleDataSource.java:945)
     [java]     at $Proxy0.prepareStatement(Unknown Source)
     [java]     at com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java:167)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.sqlExecuteQuery(GeneralStatement.java:205)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:173)
     [java]     ... 11 more
     [java] 
     [java] Caused by: 
     [java] java.sql.SQLException: Table not found in statement [         SELECT pers.id         FROM INETORGPERSON pers   ]
     [java]     at org.hsqldb.jdbc.Util.throwError(Unknown Source)
     [java]     at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(Unknown Source)
     [java]     at org.hsqldb.jdbc.jdbcConnection.prepareStatement(Unknown Source)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     [java]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [java]     at java.lang.reflect.Method.invoke(Method.java:585)
     [java]     at com.ibatis.common.jdbc.SimpleDataSource$SimplePooledConnection.invoke(SimpleDataSource.java:945)
     [java]     at $Proxy0.prepareStatement(Unknown Source)
     [java]     at com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java:167)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.sqlExecuteQuery(GeneralStatement.java:205)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:173)
     [java]     at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForList(GeneralStatement.java:123)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:610)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:584)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:101)
     [java]     at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:78)
     [java]     at org.lsc.service.AbstractJdbcService.getListPivots(AbstractJdbcService.java:117)
     [java]     at org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:297)
     [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] 689  [main] ERROR  org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:306)   - Empty or non existant source (no IDs found)

Associated revisions

Revision 271
Added by Jonathan Clarke about 1 year ago

Fixes #56. Fix quickstart tutorial.

Revision 273
Added by Jonathan Clarke about 1 year ago

Fixes #56. Further improvements for sample/quickstart

Revision 278
Added by Jonathan Clarke about 1 year ago

References #56. Needed to fix quickstart in sample

History

Updated by Jonathan Clarke about 1 year ago

  • Status changed from New to Feedback
  • % Done changed from 0 to 100

Applied in changeset r271.

Updated by Jonathan Clarke about 1 year ago

Applied in changeset r273.

Updated by Jonathan Clarke about 1 year ago

  • Assigned to set to Jonathan Clarke

I've changed this quite a bit to make the quickstart tutorial work.

This includes:
  • Updating the sample files (in misc/*.sample) to correspond to the latest LSC version
  • Changing the source data to call the telephoneNumber a telephoneNumber, and not a userPassword
  • Change the default logging format (LOG4J) to avoid spitting out Java class names all over the place
  • Removing deprecated sample files
  • Updating the quickstart tutorial page in the wiki accordingly
This works now, but could still do with some cleaning up. In particular:
  • Why are the sample files in "misc/" instead of "sample/"?
  • Are all the other files in "sample/" really necessary?

Updated by Jonathan Clarke about 1 year ago

  • Status changed from Feedback to Closed

This seems to be fixed OK now.

As for the cleaning up, it will probably never happen, since version 1.2 plans to remove lsc-sample completely. The demo code should be kept, though.

Also available in: Atom PDF