After creating a group, Messenger does not work anymore

I am using jive messenger with LDAP. It works perfectly fine, until I create a group. when I do this, I cannot log into the messenger anymore. I can still log into the admin page.

I uninstalled jive messenger, and cleared jive from the registry, then set it up again, it worked perfectly fine until I started messing with groups. then it will not work again. when I try to log into it with a messenging client, it just hangs at logging in…

there are also a bunch of errors produced in the logs.

if somone could help me with this I would appreciate it a great deal.

thank you

What are the errors in the logs.

this is one I see a lot in the error.log file:

2005.07.20 15:05:25 [org.jivesoftware.messenger.event.GroupEventDispatcher.dispatchEvent(GroupEvent Dispatcher.java:151)

]

java.lang.IllegalArgumentException: Illegal JID: conference rooms@cd-sharepoint

at org.xmpp.packet.JID.init(JID.java:391)

at org.xmpp.packet.JID.(JID.java:266)

at org.jivesoftware.messenger.XMPPServer.createJID(XMPPServer.java:160)

at org.jivesoftware.messenger.roster.Roster.addSharedUser(Roster.java:651)

at org.jivesoftware.messenger.roster.RosterManager.groupUserAdded(RosterManager.ja va:398)

at org.jivesoftware.messenger.roster.RosterManager.groupModified(RosterManager.jav a:235)

at org.jivesoftware.messenger.event.GroupEventDispatcher.dispatchEvent(GroupEventD ispatcher.java:143)

at org.jivesoftware.messenger.group.Group$PropertiesMap.put(Group.java:357)

at org.jivesoftware.messenger.admin.group_002dedit_jsp.jspService(group_002dedit jsp.java:167)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:427)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:822)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:43)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:813)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:813)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:78)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:813)

at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler. java:494)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:569)

at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)

at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.ja va:624)

at org.mortbay.http.HttpContext.handle(HttpContext.java:1434)

at org.mortbay.http.HttpServer.service(HttpServer.java:896)

at org.mortbay.http.HttpConnection.service(HttpConnection.java:814)

at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:981)

at org.mortbay.http.HttpConnection.handle(HttpConnection.java:831)

at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)

at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:366)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)

Caused by: org.jivesoftware.stringprep.StringprepException: Contains prohibited code points.

at org.jivesoftware.stringprep.Stringprep.nodeprep(Stringprep.java:120)

at org.xmpp.packet.JID.init(JID.java:342)

… 30 more

do you think this could be the error that is causing it?

Also, here are the first few lines of the debug log, the section from the beginning of 21:09:32 to the end of 21:09:32 basically just keeps repeating, with different user names…

2005.07.20 21:09:07 Created new LdapManager() instance, fields:

2005.07.20 21:09:07 host: 192.168.0.1

2005.07.20 21:09:07 port: 389

2005.07.20 21:09:07 usernamefield: mailNickname

2005.07.20 21:09:07 baseDN: DC=corp,DC=cdtechno,DC=com

2005.07.20 21:09:07 alternateBaseDN: null

2005.07.20 21:09:07 nameField: cn

2005.07.20 21:09:07 emailField: mail

2005.07.20 21:09:07 adminDN: CN=helpdesk,OU=Corp IT Department,OU=Blue Bell,DC=corp,DC=cdtechno,DC=com

2005.07.20 21:09:07 adminPassword: password

2005.07.20 21:09:07 searchFilter: (mailNickname=)

2005.07.20 21:09:07 ldapDebugEnabled: false

2005.07.20 21:09:07 sslEnabled: false

2005.07.20 21:09:07 initialContextFactory: com.sun.jndi.ldap.LdapCtxFactory

2005.07.20 21:09:07 connectionPoolEnabled: true

2005.07.20 21:09:07 autoFollowReferrals: false

2005.07.20 21:09:18 Loading plugin admin

2005.07.20 21:09:28 Connect Socket[addr=/10.13.0.24,port=2805,localport=5222]

2005.07.20 21:09:32 Trying to find a user’'s DN based on their username. mailNickname: rklein, Base DN: DC=corp,DC=cdtechno,DC=com…

2005.07.20 21:09:32 Creating a DirContext in LdapManager.getContext()…

2005.07.20 21:09:32 Created hashtable with context values, attempting to create context…

2005.07.20 21:09:32 … context created successfully, returning.

2005.07.20 21:09:32 Starting LDAP search…

2005.07.20 21:09:32 … search finished

2005.07.20 21:09:33 In LdapManager.checkAuthentication(userDN, password), userDN is: CN=Klein, Randy,OU=Corp IT Department,OU=Blue Bell…

2005.07.20 21:09:33 Created context values, attempting to create context…

2005.07.20 21:09:34 … context created successfully, returning.

2005.07.20 21:09:34 Trying to find a user’'s DN based on their username. mailNickname: rklein, Base DN: DC=corp,DC=cdtechno,DC=com…

2005.07.20 21:09:34 Creating a DirContext in LdapManager.getContext()…

2005.07.20 21:09:34 Created hashtable with context values, attempting to create context…

2005.07.20 21:09:34 … context created successfully, returning.

2005.07.20 21:09:34 Starting LDAP search…

2005.07.20 21:09:34 … search finished

Hey Randy,

That is exactly the problem that is causing it. The problem is that the username “conference rooms” is invalid since it has an empty space. XMPP does not allow JIDs to have empty spaces or other “special” characters. Try changing the name of the user and let me know how it goes.

Regards,

– Gato

Gato,

It really isnt feasible for me to change this name in active directory. Do you know if there is any other way around this? When I setup LDAP, is it possible to filter out JID’'s with blank spaces in them? Possible using the search feature. I dont need to use the Conference Room Account, but it still imports it from active directory.

thanks

-Randy

I got rid of Conference Rooms, now I have the following error in the error.log. I am affraid that I have a lof of accounts in AD with spaces. Is there anything else I can do?

2005.07.22 10:13:15 [org.jivesoftware.messenger.handler.IQRosterHandler.handleIQ(IQRosterHandler.ja va:118)

] Internal server error

java.lang.IllegalArgumentException: Illegal JID: attica – daily production@cd-sharepoint

at org.xmpp.packet.JID.init(JID.java:391)

at org.xmpp.packet.JID.(Roster.java:105)

at org.jivesoftware.messenger.roster.RosterManager.getRoster(RosterManager.java:69 )

at org.jivesoftware.messenger.user.User.getRoster(User.java:243)

at org.jivesoftware.messenger.handler.IQRosterHandler.manageRoster(IQRosterHandler .java:173)

at org.jivesoftware.messenger.handler.IQRosterHandler.handleIQ(IQRosterHandler.jav a:103)

at org.jivesoftware.messenger.handler.IQHandler.process(IQHandler.java:48)

at org.jivesoftware.messenger.IQRouter.handle(IQRouter.java:202)

at org.jivesoftware.messenger.IQRouter.route(IQRouter.java:73)

at org.jivesoftware.messenger.PacketRouter.route(PacketRouter.java:65)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketReadThread.jav a:285)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.java:105)

Caused by: org.jivesoftware.stringprep.StringprepException: Contains prohibited code points.

at org.jivesoftware.stringprep.Stringprep.nodeprep(Stringprep.java:120)

at org.xmpp.packet.JID.init(JID.java:342)

… 14 more

I have realized that all of the errors that I am getting are on org units, or contacts, none of the “users” or when the ObjectCatagory is “CN=Person”. how can I filter the ldap results for only users, or for ObjectCatagory is “CN=Person”

figured it out on my own, thanks gato