igniterealtime/openfire-monitoring-plugin

IncompatibleClassChangeError: Found class org.jivesoftware.openfire.muc.MUCRoom, but interface was expected

Closed this issue · 2 comments

Observed whilst running on current master build / openfire 4.7.0

Exception in thread "socket_c2s_ssl-thread-2" java.lang.IncompatibleClassChangeError: Found class org.jivesoftware.openfire.muc.MUCRoom, but interface was expected
	at com.reucon.openfire.plugin.archive.xep0313.IQQueryHandler.handleIQ(IQQueryHandler.java:163)
	at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.process(MultiUserChatServiceImpl.java:528)
	at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiUserChatServiceImpl.java:396)
	at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:859)
	at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:544)
	at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:359)
	at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:340)
	at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:105)
	at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:74)
	at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:369)
	at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler.java:95)
	at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:311)
	at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:198)
	at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandler.java:183)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:1015)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
	at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:122)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
	at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:413)
	at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:257)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
	at org.apache.mina.filter.ssl.SslHandler.flushMessageReceived(SslHandler.java:330)
	at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:552)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
	at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:106)
	at org.apache.mina.core.session.IoEvent.run(IoEvent.java:89)
	at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTask(OrderedThreadPoolExecutor.java:766)
	at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTasks(OrderedThreadPoolExecutor.java:758)
	at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.run(OrderedThreadPoolExecutor.java:697)
	at java.lang.Thread.run(Thread.java:748)
Exception in thread "Server SR - 1346004680" java.lang.IncompatibleClassChangeError: Found class org.jivesoftware.openfire.muc.MUCRoom, but interface was expected
	at com.reucon.openfire.plugin.archive.xep0313.IQQueryHandler.handleIQ(IQQueryHandler.java:163)
	at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.process(MultiUserChatServiceImpl.java:528)
	at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiUserChatServiceImpl.java:396)
	at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:859)
	at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:544)
	at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:359)
	at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:340)
	at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:105)
	at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:74)
	at org.jivesoftware.openfire.net.SocketReader.processIQ(SocketReader.java:274)
	at org.jivesoftware.openfire.net.ServerSocketReader.processIQ(ServerSocketReader.java:73)
	at org.jivesoftware.openfire.net.SocketReader.process(SocketReader.java:243)
	at org.jivesoftware.openfire.net.BlockingReadingMode.readStream(BlockingReadingMode.java:188)
	at org.jivesoftware.openfire.net.BlockingReadingMode.run(BlockingReadingMode.java:81)
	at org.jivesoftware.openfire.net.SocketReader.run(SocketReader.java:150)
	at java.lang.Thread.run(Thread.java:748)

I managed to reproduce the error by loading the monitoring plugin in OF 4.7.0 and requesting chat history for a room (in inVerse). In that setup the error does not show up anymore after loading the updated plugin of evdherberg@6fe03a2. So I am confident that change fixes this issue.

This was fixed in ca0b2d5