Group Summary Page Bug

On the group summary page in the admin console, if you have more than 15 groups it creates multiple pages to list the groups.

The problem is, if you click to go on to page 2, groups 16 and up are not listed on the second page.

Thanks.

When I visit page 2 or 3 of the group summary page, the following is logged in the error.log:

2005.12.29 17:01:39 [org.jivesoftware.wildfire.group.DefaultGroupProvider.getGroups(DefaultGroupPro vider.java:291)

]

java.sql.SQLException: ResultSet may only be accessed in a forward direction.

at net.sourceforge.jtds.jdbc.JtdsResultSet.checkScrollable(JtdsResultSet.java:316)

at net.sourceforge.jtds.jdbc.JtdsResultSet.relative(JtdsResultSet.java:723)

at org.jivesoftware.database.DbConnectionManager.scrollResultSet(DbConnectionManag er.java:293)

at org.jivesoftware.wildfire.group.DefaultGroupProvider.getGroups(DefaultGroupProv ider.java:282)

at org.jivesoftware.wildfire.group.GroupManager.getGroups(GroupManager.java:188)

at org.jivesoftware.wildfire.admin.group_002dsummary_jsp._jspService(group_002dsum mary_jsp.java:157)

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)

/code

Sounds like JM-468, but then again, that was reported to be fixed before the JiveMessenger->Wildfire namechange. Check the first external reference in that issue report: it describes a similar problem, as far as I can see.

I think you’'re right. JM-468 fixed DefaultUserProvider.java, and it looks like the same problem exists in DefaultGroupProvider.java.

pstmt = con.prepareStatement(ALL_GROUPS);

maybe should be

pstmt = DbConnectionManager.createScrollablePreparedStatement(con,ALL_GROUPS);

?

Thanks for the bug report! I filed this as JM-498 and fixed it.

Regards,

Matt

Great, thanks.