Issue #471 has been updated by David Coutadeur.


More precisely, here is the stacktrace:


    org.lsc.exception.LscConfigurationException: 
java.lang.reflect.InvocationTargetException
            at org.lsc.Task.<init>(Task.java:124) 
~[lsc-core-2.0-SNAPSHOT.jar:na]
            at org.lsc.SimpleSynchronize.init(SimpleSynchronize.java:103) 
~[lsc-core-2.0-SNAPSHOT.jar:na]
            at org.lsc.SimpleSynchronize.launch(SimpleSynchronize.java:145) 
~[lsc-core-2.0-SNAPSHOT.jar:na]
            at org.lsc.Launcher.run(Launcher.java:223) 
[lsc-core-2.0-SNAPSHOT.jar:na]
            at org.lsc.Launcher.launch(Launcher.java:158) 
[lsc-core-2.0-SNAPSHOT.jar:na]
            at org.lsc.Launcher.main(Launcher.java:141) 
[lsc-core-2.0-SNAPSHOT.jar:na]
    Caused by: java.lang.reflect.InvocationTargetException: null
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method) ~[na:1.6.0_29]
            at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
 ~[na:1.6.0_29]
            at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
 ~[na:1.6.0_29]
            at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 
~[na:1.6.0_29]
            at org.lsc.Task.<init>(Task.java:117) 
~[lsc-core-2.0-SNAPSHOT.jar:na]
            ... 5 common frames omitted
    Caused by: java.lang.IncompatibleClassChangeError: Implementing class
            at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.6.0_29]
            at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.defineClass(ClassLoader.java:615) 
~[na:1.6.0_29]
            at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
~[na:1.6.0_29]
            at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
~[na:1.6.0_29]
            at java.security.AccessController.doPrivileged(Native Method) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
~[na:1.6.0_29]
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.6.0_29]
            at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.defineClass(ClassLoader.java:615) 
~[na:1.6.0_29]
            at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
~[na:1.6.0_29]
            at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
~[na:1.6.0_29]
            at java.security.AccessController.doPrivileged(Native Method) 
~[na:1.6.0_29]
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
~[na:1.6.0_29]
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
~[na:1.6.0_29]
            at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
~[na:1.6.0_29]
            at java.lang.Class.forName0(Native Method) ~[na:1.6.0_29]
            at java.lang.Class.forName(Class.java:169) ~[na:1.6.0_29]
            at 
org.apache.directory.ldap.client.api.LdapConnectionFactory.getNetworkConnection(LdapConnectionFactory.java:71)
 ~[shared-all-1.0.0-M11.jar:1.0.0-M11]
            at 
org.lsc.service.SyncReplSourceService.getConnection(SyncReplSourceService.java:139)
 ~[lsc-core-2.0-SNAPSHOT.jar:na]
            at 
org.lsc.service.SyncReplSourceService.<init>(SyncReplSourceService.java:132) 
~[lsc-core-2.0-SNAPSHOT.jar:na]
            ... 10 common frames omitted 
----------------------------------------
Bug #471: substring search in <getAllFilter> is not working in v2.0
http://tools.lsc-project.org/issues/471

Author: David Coutadeur
Status: Feedback
Priority: Normal
Assigned to: Sébastien Bahloul
Category: Core
Target version: 2.0
Problem in version: 


A search like 
<getAllFilter><![CDATA[(myattribute=abc*)]]></getAllFilter>
is not properly evaluated and cause a bug in apacheds-all.jar. More precisely 
in 
org.apache.directory.shared.ldap.codec.*

Here are some elements for debuging: 
line 1217 in LdapConnection:
            ExprNode filterNode = FilterParser.parse( searchRequest.getFilter() 
);
            filter = LdapTransformer.transformFilter( filterNode );

The filterNode seems correctly evaluated, but the 
LdapTransformer.transformFilter produces a filter that does not seem correct.
Indeed, inside filter, we can see : initialSubstring: abc, but there is no 
reference to "myattribute" in it.
As a result, the
line 1457 in LdapConnection:
WriteFuture writeFuture = ldapSession.write( request );

fails with no request in the ldap.

- The transformFilter operation is in an external library: apacheds-all-1.5.7. 
Maybe an upgrade to 2.0 could solve the bug.

- This issue could be related to the same problem : 
https://issues.apache.org/jira/browse/DIRAPI-17




-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://tools.lsc-project.org/my/account
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org

lsc-dev mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-dev

Reply via email to