Lluna client causes Jive Messenger Admin Console (2.3.0 Beta 1) failure

Using the following:

  • Jive Messenger Server (2.3.0 Beta 1) running on Fedora Core 4

  • lluna web presence client v2.5.18 (http://developer.lluna.de/) running on WinXP

If I start up the server and connect with the Admin tool, I can navigate to the Users/Groups and Sessions tab and see valid data. If I start up the lluna client described above, the normal data on the two tabs indicated is replaced by the following error messages.

USERS/GROUPS Tab


HTTP ERROR: 500

No enum const class org.xmpp.packet.Presence$Show.available

RequestURI=/user-summary.jsp

Powered by Jetty://

<< end of page>>

SESSIONS Tab


Exception:

java.lang.IllegalArgumentException: No enum const class org.xmpp.packet.Presence$Show.available

at java.lang.Enum.valueOf(Unknown Source)

at org.xmpp.packet.Presence$Show.valueOf(Presence.java:374)

at org.xmpp.packet.Presence.getShow(Presence.java:133)

at org.jivesoftware.messenger.admin.session_002dsummary_jsp._jspService(session_00 2dsummary_jsp.java:321)

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 com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)

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

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:98)

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)

<< end of page>>

My guess is that the client is using a presence type (as noted in the WARN Log) the server does not understand, and instead of handling it, issues those errors. Here also is the output from the Admin consoles Logs.

WARN Log


2005.11.03 16:01:34 Invalid presence type

java.lang.IllegalArgumentException: No enum const class org.xmpp.packet.Presence$Type.available

at java.lang.Enum.valueOf(Unknown Source)

at org.xmpp.packet.Presence$Type.valueOf(Presence.java:318)

at org.xmpp.packet.Presence.getType(Presence.java:103)

at org.jivesoftware.messenger.net.SocketReader.readStream(SocketReader.java:206)

at org.jivesoftware.messenger.net.SocketReader.run(SocketReader.java:114)

at java.lang.Thread.run(Unknown Source)

DEBUG Log


2005.11.03 16:01:34 Connect Socket[addr=/10.0.0.2,port=6652,localport=5222]

When I disconnect the client, the tabs return to displaying data as normal.

My questions are:

  1. (general question) has anyone come across this type of issue, the mere connection of a client causes the Admin console to fail, or not provide data.

  2. (Specific to this issue) can the presence types be changed/added in Jive Messenger, and if so, where/how?

Thanks

Don

  1. (Specific to this issue) can the presence types be

changed/added in Jive Messenger, and if so,

where/how?

I think this may violate XMPP specs.

Hey Don,

Thanks for the bug report. Even though clients may send invalid show values in their presences the server should be able to “survive” and not break. I created the issue JM-452 for this problem and fixed the issue. You can wait for the next nightly build to try the bug fix or meanwhile you may want to use another client.

Thanks,

– Gato