Issue #882 has been updated by Andreas Grünberger.
If have tried out a quick fix an trunk:
<pre>
if(connection.getReferral() != null) {
///AGU - quick fix
String referral =
connection.getReferral().value().toLowerCase();
if (referral.equals("through")) {
referral = "follow";
}
props.setProperty(DirContext.REFERRAL, referral);
} else {
props.setProperty(DirContext.REFERRAL,
LdapReferralType.IGNORE.value().toLowerCase());
}
</pre>
--> Active Directory following works as expected
----------------------------------------
Bug #882: The referral attribute "THROUGH" is not transated to "follow" for JNDI
http://tools.lsc-project.org/issues/882
Author: Andreas Grünberger
Status: New
Priority: Normal
Assigned to:
Category: Core
Target version:
Problem in version: 2.1.x
In the JndiServices, the Attribute "Referral" of Enum "LdapReferralType" is not
correct translated.
The value "THROUGH" should be translated to "follow".
see JndiServices.java line: ~389
Therefore a IllegalArgumentException is raised:
Dez 12 14:40:11 - ERROR - Error opening the LDAP connection to the destination!
(java.lang.IllegalArgumentException: Illegal value for java.naming.referral
property.)
Dez 12 14:40:11 - ERROR - org.lsc.exception.LscConfigurationException:
Configuration exception: java.lang.IllegalArgumentException: Illegal value for
java.naming.referral property.
Dez 12 14:40:11 - DEBUG - org.lsc.exception.LscConfigurationException:
Configuration exception: java.lang.IllegalArgumentException: Illegal value for
java.naming.referral property.
org.lsc.exception.LscConfigurationException: Configuration exception:
java.lang.IllegalArgumentException: Illegal value for java.naming.referral
property.
at org.lsc.Task.<init>(Task.java:148) ~[classes/:na]
at org.lsc.SimpleSynchronize.init(SimpleSynchronize.java:104)
~[classes/:na]
at org.lsc.SimpleSynchronize.launch(SimpleSynchronize.java:154)
~[classes/:na]
at org.lsc.Launcher.run(Launcher.java:223) [classes/:na]
at org.lsc.Launcher.launch(Launcher.java:158) [classes/:na]
at org.lsc.Launcher.main(Launcher.java:141) [classes/:na]
Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException:
Illegal value for java.naming.referral property.
at org.lsc.jndi.JndiServices.getInstance(JndiServices.java:474)
~[classes/:na]
at
org.lsc.jndi.AbstractSimpleJndiService.<init>(AbstractSimpleJndiService.java:178)
~[classes/:na]
at
org.lsc.jndi.SimpleJndiSrcService.<init>(SimpleJndiSrcService.java:116)
~[classes/:na]
at
org.lsc.jndi.PullableJndiSrcService.<init>(PullableJndiSrcService.java:109)
~[classes/:na]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method) ~[na:1.6.0_45]
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
~[na:1.6.0_45]
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
~[na:1.6.0_45]
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
~[na:1.6.0_45]
at org.lsc.Task.<init>(Task.java:143) ~[classes/:na]
... 5 common frames omitted
Caused by: java.lang.IllegalArgumentException: Illegal value for
java.naming.referral property.
at com.sun.jndi.ldap.LdapCtx.setReferralMode(LdapCtx.java:2370)
~[na:1.6.0_45]
at com.sun.jndi.ldap.LdapCtx.initEnv(LdapCtx.java:2307) ~[na:1.6.0_45]
at com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:294) ~[na:1.6.0_45]
at
com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:175)
~[na:1.6.0_45]
at
com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:193)
~[na:1.6.0_45]
at
com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:136)
~[na:1.6.0_45]
at
com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:66)
~[na:1.6.0_45]
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
~[na:1.6.0_45]
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
~[na:1.6.0_45]
at javax.naming.InitialContext.init(InitialContext.java:223)
~[na:1.6.0_45]
at
javax.naming.ldap.InitialLdapContext.<init>(InitialLdapContext.java:134)
~[na:1.6.0_45]
at org.lsc.jndi.JndiServices.initConnection(JndiServices.java:213)
~[classes/:na]
at org.lsc.jndi.JndiServices.<init>(JndiServices.java:167)
~[classes/:na]
at org.lsc.jndi.JndiServices.getInstance(JndiServices.java:324)
~[classes/:na]
at org.lsc.jndi.JndiServices.getInstance(JndiServices.java:309)
~[classes/:na]
at org.lsc.jndi.JndiServices.getInstance(JndiServices.java:471)
~[classes/:na]
... 13 common frames omitted
--
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