Spark not allowing user login with LDAP on Openfire

All of my users populated when I set up my Openfire server but when I downloaded the Spark client and tried to login I get an unknown connection error. Please review logs for more information. When I go into the logs nothing is really sticking out to me as being the cause. Any advice would be appreciated. Thanks

Spark logs are here C:\Users\User\AppData\Roaming\Spark\logs
There can be many files, look through all of them and search for events at the time of the error. You can also check Openfire logs at \Openfire\logs\all.log

Well I have it on a Linux server but I will try to check out the logs on there. Thanks

there are a few things to try. first Id make sure the workstation can connect to your openfire instance. you can use telnet to complete this simple test. this will help rule out network/firewall issues.

I can ping the openfire fqdn but I cannot telnet to the ip address. I added the 5222 udp and tcp to the inbound and outbound windows firewall but still no luck

You run Spark on a server? Anyway, for Linux it should be somewhere in the home folder. $HOME/.Spark

P.S. Are you trying to connect with Spark from the same machine you have Openfire installed on?

2018.07.05 08:04:07 org.jivesoftware.util.Log -
java.lang.UnsupportedOperationException: User provider is read-only.
at org.jivesoftware.openfire.user.UserManager.createUser(UserManager.java:191)
at org.jivesoftware.openfire.plugin.registration.sign_002dup_jsp._jspService(sign_002dup_jsp.java:164)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.jivesoftware.openfire.container.PluginServlet.handleJSP(PluginServlet.java:382)
at org.jivesoftware.openfire.container.PluginServlet.service(PluginServlet.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:226)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:215)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:73)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:49)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:226)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:215)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:499)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:748)

No I am on a different machine. I used HyperV on a server to install Linux Cenos 7 on. After that was all installed with Openfire I went back to my workstation and setup Openfire via IPaddress:9090 and then downloaded Spark on my desktop.

Maybe I am being stupid here but when i put in my credentials on spark do i put in my active directory credentials for the username and the domain or do I use the openfire domain name?

This log is from Openfire, not from Spark. Not sure how you ended up finding it in $HOME./Spark. I think we need to clarify what is installed and running where.

So you have a Windows PC with Hyper-V. You installed CentOS in a virtual machine there and in that virtual machine with CentOS you installed Openfire. Then from that Windows PC host you opened a browser and went to ipaddressofcentosvm:9090 and went through Openfire setup. Then on another PC (or same Windows PC?) with Linux (or Windows?) you have installed Spark and try to login to Openfire. Is it right?

I have never used LDAP integration, so speedy should answer that last question better. I would guess you have to use XMPP domain to login. But maybe you have to enable some Kerberos settings or something. Although, that might be only required for SSO login.

OK thank you for the help sorry if I wasn’t being clear. I did end up finding the problem in Hyperv my virtual switch was not allowing the traffic for some reason. I added the server to a new one and it took off. If I could ask one more question though, when I logged into Spark and had another user sign in they did not autopopulate with the ability to see each other. Is the only way to add contacts manually?

If you go to Groups in Admin Console, do you see groups there from LDAP? If you do, then you can open group settings and enable Sharing in contact list, so a group will show up for all (or selected groups). If you don’t see groups, then you probably need to fix your LDAP query/filter, but i can’t help with that.

I do see that in the groups but some accounts are just User accounts that are not in a group. Is there no way to get them to add in automatically

No, contact list sharing works only with groups.

OK thank you, I appreciate your guys help!

You’re welcome :wink: Btw, you can mark one of the answers as a solution (… menu below the message). I guess your own, as you have found out its on your own for your original issue.