0

我正在运行 openfire 服务器作为我的聊天服务器的基础,但我对 openfire 的健壮性不满意,它似乎有很多 java 错误,

与我交谈过的 Java 专家说,这都是编码错误,Java 异常没有正确处理。只是想从 java 专家那里知道以下错误真的是 java 编程问题或我的服务器或设置问题。

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at org.logicalcobwebs.proxool.util.FastArrayList.get(FastArrayList.java:475)
at org.logicalcobwebs.proxool.ConnectionPool.getConnection(ConnectionPool.java:184)
at org.logicalcobwebs.proxool.ProxoolDriver.connect(ProxoolDriver.java:89)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.jivesoftware.database.DefaultConnectionProvider.getConnection(DefaultConnectionProvider.java:86)
at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager.java:124)
at org.jivesoftware.openfire.spi.PresenceManagerImpl.userUnavailable(PresenceManagerImpl.java:280)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:168)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:135)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:199)
at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:149)
at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:85)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84)
at org.jivesoftware.openfire.SessionManager$ClientSessionListener.onConnectionClose(SessionManager.java:1164)
at org.jivesoftware.openfire.net.VirtualConnection.notifyCloseListeners(VirtualConnection.java:214)
at org.jivesoftware.openfire.net.VirtualConnection.close(VirtualConnection.java:190)
at org.jivesoftware.openfire.http.HttpSession$HttpVirtualConnection.systemShutdown(HttpSession.java:1008)
at org.jivesoftware.openfire.spi.LocalRoutingTable.stop(LocalRoutingTable.java:146)
at org.jivesoftware.openfire.spi.RoutingTableImpl.stop(RoutingTableImpl.java:857)
at org.jivesoftware.openfire.XMPPServer.shutdownServer(XMPPServer.java:948)
at org.jivesoftware.openfire.XMPPServer.access$700(XMPPServer.java:146)
at org.jivesoftware.openfire.XMPPServer$ShutdownHookThread.run(XMPPServer.java:898)
2012.11.24 05:50:37 org.jivesoftware.util.log.util.CommonsLogFactory - Problem
java.sql.SQLException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at org.logicalcobwebs.proxool.ConnectionPool.getConnection(ConnectionPool.java:235)
at org.logicalcobwebs.proxool.ProxoolDriver.connect(ProxoolDriver.java:89)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.jivesoftware.database.DefaultConnectionProvider.getConnection(DefaultConnectionProvider.java:86)
at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager.java:124)
at org.jivesoftware.openfire.spi.PresenceManagerImpl.userUnavailable(PresenceManagerImpl.java:280)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:168)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:135)
at org.jivesoftware.openfire.handler.PresenceUpdateHandler.process(PresenceUpdateHandler.java:199)
at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:149)
at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:85)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84)
at org.jivesoftware.openfire.SessionManager$ClientSessionListener.onConnectionClose(SessionManager.java:1164)
at org.jivesoftware.openfire.net.VirtualConnection.notifyCloseListeners(VirtualConnection.java:214)
at org.jivesoftware.openfire.net.VirtualConnection.close(VirtualConnection.java:190)
at org.jivesoftware.openfire.http.HttpSession$HttpVirtualConnection.systemShutdown(HttpSession.java:1008)
at org.jivesoftware.openfire.spi.LocalRoutingTable.stop(LocalRoutingTable.java:146)
at org.jivesoftware.openfire.spi.RoutingTableImpl.stop(RoutingTableImpl.java:857)
at org.jivesoftware.openfire.XMPPServer.shutdownServer(XMPPServer.java:948)
at org.jivesoftware.openfire.XMPPServer.access$700(XMPPServer.java:146)
at org.jivesoftware.openfire.XMPPServer$ShutdownHookThread.run(XMPPServer.java:898)   
4

1 回答 1

0

这可能是您正在(或未)传递给数据库驱动程序的参数的问题 - 或者可能是数据库驱动程序本身的错误。我的猜测是您没有在数据库连接字符串中传递必需的属性。

这当然不是 openfire 本身的问题——我们已经使用 openfire 很多年了,它是一款出色的软件。

于 2012-11-24T07:15:59.440 回答