Hi all,

I'm having a peculiar problem with my LDAP integration.  I'm integrating with 
AD and this seems to work but when a user logs in she/he is greeted with "Your 
account is assigned with multiple usergroups. Please choose one for this 
session" then a drop down box.  The drop down box is empty.  When they continue 
it displays a blank page.  I'm not sure where the issue is. I have not assigned 
any user to any group since they're authenticating through AD.

Here's the relevant snippet of the log:

DEBUG 09-18 18:18:36.257 o.a.o.q.s.MeetingReminderJob:34 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-5] - 
MeetingReminderJob.execute
DEBUG 09-18 18:18:36.269 o.a.o.d.c.d.AppointmentDao:929 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-5] - 
startStamp 2013-09-18 18:18:36.269
DEBUG 09-18 18:18:36.271 o.a.o.d.c.d.AppointmentDao:930 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-5] - 
stopStamp 2013-09-18 18:33:36.269
DEBUG 09-18 18:18:36.280 o.a.o.d.c.m.AppointmentLogic:423 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-5] - 
doScheduledMeetingReminder : no Appointments in range
WARN 09-18 18:19:09.425 o.a.o.r.MainService:307 [NioProcessor-6] - loginUser: 
72e9df24631c6af8bdcc071699217419 yos2653
DEBUG 09-18 18:19:09.426 o.a.o.r.MainService:318 [NioProcessor-6] - Ldap Login
DEBUG 09-18 18:19:09.450 o.a.o.l.LdapLoginManagement:245 [NioProcessor-6] - 
LdapLoginmanagement.doLdapLogin
DEBUG 09-18 18:19:09.451 o.a.o.l.LdapLoginManagement:209 [NioProcessor-6] - 
LdapLoginmanagement.getLdapConfigData
DEBUG 09-18 18:19:09.452 o.a.o.l.LdapLoginManagement:222 [NioProcessor-6] - 
LdapLoginmanagement.readConfig : 
/usr/lib/red52/webapps/openmeetings/conf/om_ldap.cfg
DEBUG 09-18 18:19:09.454 o.a.o.l.LdapLoginManagement:149 [NioProcessor-6] - 
isValidAuthType
DEBUG 09-18 18:19:09.455 o.a.o.l.LdapLoginManagement:381 [NioProcessor-6] - 
Searching userdata with LDAP Search Filter :(userPrincipalName =yos2653)
DEBUG 09-18 18:19:09.456 o.a.o.l.LdapAuthBase:84 [NioProcessor-6] - LdapAuthBase
DEBUG 09-18 18:19:09.457 o.a.o.l.LdapLoginManagement:390 [NioProcessor-6] - 
authenticating admin...
DEBUG 09-18 18:19:09.458 o.a.o.l.LdapAuthBase:101 [NioProcessor-6] - 
authenticateUser
ERROR 09-18 18:19:09.463 o.a.o.r.MainService:393 [NioProcessor-6] - loginUser :
java.lang.NullPointerException: null
        at java.util.Hashtable.put(Hashtable.java:394) ~[na:1.6.0_45]
        at 
org.apache.openmeetings.ldap.LdapAuthBase.authenticateUser(LdapAuthBase.java:109)
 ~[openmeetings-2.1.1-RELEASE.jar:na]
        at 
org.apache.openmeetings.ldap.LdapLoginManagement.doLdapLogin(LdapLoginManagement.java:391)
 ~[openmeetings-2.1.1-RELEASE.jar:na]
        at 
org.apache.openmeetings.remote.MainService.loginUser(MainService.java:333) 
~[openmeetings-2.1.1-RELEASE.jar:na]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[na:1.6.0_45]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
~[na:1.6.0_45]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 ~[na:1.6.0_45]
        at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_45]
        at 
org.red5.server.service.ServiceInvoker.invoke(ServiceInvoker.java:196) 
[red5.jar:na]
        at 
org.red5.server.service.ServiceInvoker.invoke(ServiceInvoker.java:115) 
[red5.jar:na]
        at 
org.red5.server.net.rtmp.RTMPHandler.invokeCall(RTMPHandler.java:157) 
[red5.jar:na]
        at org.red5.server.net.rtmp.RTMPHandler.onInvoke(RTMPHandler.java:399) 
[red5.jar:na]
        at 
org.red5.server.net.rtmp.BaseRTMPHandler.messageReceived(BaseRTMPHandler.java:130)
 [red5.jar:na]
        at 
org.red5.server.net.rtmp.RTMPMinaIoHandler.messageReceived(RTMPMinaIoHandler.java:164)
 [red5.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:716)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:427)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:245)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
 [mina-core-2.0.4.jar:na]
        at 
org.red5.server.net.rtmpe.RTMPEIoFilter.messageReceived(RTMPEIoFilter.java:124) 
[red5.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:715)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:668)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:657)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1141)
 [mina-core-2.0.4.jar:na]
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) 
[mina-core-2.0.4.jar:na]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
 [na:1.6.0_45]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 
[na:1.6.0_45]
        at java.lang.Thread.run(Thread.java:662) [na:1.6.0_45]
DEBUG 09-18 18:20:11.267 o.a.o.q.s.TestSetupCleanupJob:34 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-6] - 
TestSetupClearJob.execute
DEBUG 09-18 18:20:11.327 o.a.o.u.m.MailHandler:241 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-7] - 
sendMails enter ...
DEBUG 09-18 18:20:11.335 o.a.o.u.m.MailHandler:247 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-7] - ... 
sendMails done.
DEBUG 09-18 18:20:16.247 o.a.o.d.b.SessiondataDao:410 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-8] - 
****** clearSessionTable:
DEBUG 09-18 18:20:16.257 o.a.o.d.b.SessiondataDao:414 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-8] - 
clearSessionTable: 2
DEBUG 09-18 18:20:16.258 o.a.o.q.s.MeetingReminderJob:34 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9] - 
MeetingReminderJob.execute
DEBUG 09-18 18:20:16.270 o.a.o.d.c.d.AppointmentDao:929 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9] - 
startStamp 2013-09-18 18:20:16.269
DEBUG 09-18 18:20:16.271 o.a.o.d.c.d.AppointmentDao:930 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9] - 
stopStamp 2013-09-18 18:35:16.269
DEBUG 09-18 18:20:16.281 o.a.o.d.c.m.AppointmentLogic:423 
[org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9] - 
doScheduledMeetingReminder : no Appointments in range
DEBUG 09-18 18:20:45.167 o.a.o.d.b.SessiondataDao:242 [NioProcessor-6] - 
updateUserOrg User: null || 72e9df24631c6af8bdcc071699217419


Anyone with any ideas?

==== om_ldap.cfg =====

# This parameter specifies the type of LDAP server your are defining
#
# Supported values are "OpenLDAP" and "AD" for Active Directory (defaults to 
AD).
ldap_server_type=AD

#LDAP URL
# This is the URL used to access your LDAP server.

# can be a simple URL like:
#   ldap_conn_url=ldap://myldap.myorg.com
# or a list of simple URL separated by a space as in:
#   ldap_conn_url=ldap://myldap.myorg.com ldap://myldap2.myorg.com
# if you want to use "ldaps://" links, please be aware that you need to import 
your CA certificate
#  to a java keystore and add the -Djavax.net.ssl.keyStore, 
-Djavax.net.ssl.keyStorePassword,
#  -Djavax.net.ssl.trustStore and -Djavax.net.ssl.trustStorePassword parameters 
to your
#  JAVA_OPT environment
ldap_conn_url=ldap://dc1.afdb.local:389

#Login distinguished name (DN) for Authentification on LDAP Server - keep emtpy 
if not requiered
# Use DN with with ":" instead of "=". The conversion will be done in OM
ldap_admin_dn=afdb\otrs

#Loginpass for Authentification on LDAP Server - keep emtpy if not requiered
#ldap_passwd=myownpasswd

#base to search for userdata(of user, that wants to login)
# Use DN with with ":" instead of "=". The conversion will be done in OM
ldap_search_base=OU:SARC,OU:AFDB_Field_Offices,DC:afdb,DC:local

# Fieldnames (can differ between Ldap servers)
field_user_principal=userPrincipalName

# Ldap auth type(SIMPLE,NONE)
#  When using SIMPLE a simple bind is performed on the LDAP server to check 
user authentication
#  When using NONE, the Ldap server is not used for authentication
ldap_auth_type=SIMPLE

# Ldap-password synchronization to OM DB
#  Set this to 'yes' if you want OM to synchronize the user Ldap-password to 
OM's internal DB
#  This enables local login of users if the ldap server is offline.
#  If you want to disable the feature, set this to 'no'.
#  Defautl value is 'yes'
ldap_sync_password_to_om=no


# Ldap user attributes mapping
# Set the following internal OM user attributes to their corresponding 
Ldap-attribute
ldap_user_attr_lastname=sn
ldap_user_attr_firstname=givenName
ldap_user_attr_mail=mail
ldap_user_attr_street=streetAddress
ldap_user_attr_additionalname=description
ldap_user_attr_fax=facsimileTelephoneNumber
ldap_user_attr_zip=postalCode
ldap_user_attr_country=co
ldap_user_attr_town=l
ldap_user_attr_phone=telephoneNumber

# optional, only absolute URLs make sense
#ldap_user_picture_uri=picture_uri

# optional
# the timezone has to mach an entry in the OpenMeetings table "omtimezones" 
otherwise the user will get
# the timezone defined in the value of the conf_key "default.timezone" in 
OpenMeetings "configurations" table
#ldap_user_timezone=timezone

# Ldap ignore upper/lower case, convert all input to lower case
ldap_use_lower_case=false

Reply via email to