powered by Jive Software

Openfire 4.7.0 User gets kicked by openfire if he writes a message to MUC

Yesterday I updated my Openfire from 4.6.6 to 4.7. Everything seems to work, except for the MUC rooms. If the user writes a message to the MUC, then he immediately loses the connection and Openfire kicks him.

Spark 2.9.4

2022.01.24 08:16:50 ERROR [socket_c2s-thread-9]: org.jivesoftware.openfire.nio.ConnectionHandler - Closing connection due to error while processing message: <message to='fd-bnk@muc.srv-chat.coleman.local' id='KTYuU-197535' type='groupchat'><body>всем привет</body><x xmlns="jabber:x:event"><offline/><delivered/><displayed/><composing/></x></message>
java.lang.IncompatibleClassChangeError: Found class org.jivesoftware.openfire.muc.MUCRoom, but interface was expected
    at org.jivesoftware.openfire.archive.Conversation.<init>(Conversation.java:154) ~[?:?]
    at org.jivesoftware.openfire.archive.ConversationManager.processRoomMessage(ConversationManager.java:734) ~[?:?]
    at org.jivesoftware.openfire.archive.GroupConversationInterceptor.messageReceived(GroupConversationInterceptor.java:120) ~[?:?]
    at org.jivesoftware.openfire.muc.MUCEventDispatcher.messageReceived(MUCEventDispatcher.java:88) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.MUCRoom.sendPublicMessage(MUCRoom.java:1401) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPublicMessage(MultiUserChatServiceImpl.java:838) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processOccupantMessage(MultiUserChatServiceImpl.java:764) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.process(MultiUserChatServiceImpl.java:679) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processRegularStanza(MultiUserChatServiceImpl.java:632) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiUserChatServiceImpl.java:456) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:863) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:541) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:354) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:134) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:79) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.net.StanzaHandler.processMessage(StanzaHandler.java:411) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.net.ClientStanzaHandler.processMessage(ClientStanzaHandler.java:109) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:235) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:198) ~[xmppserver-4.7.0.jar:4.7.0]
    at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandler.java:183) [xmppserver-4.7.0.jar:4.7.0]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:1015) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:122) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128) [mina-core-2.1.3.jar:?]
    at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:413) [mina-core-2.1.3.jar:?]
    at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:257) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:106) [mina-core-2.1.3.jar:?]
    at org.apache.mina.core.session.IoEvent.run(IoEvent.java:89) [mina-core-2.1.3.jar:?]
    at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTask(OrderedThreadPoolExecutor.java:766) [mina-core-2.1.3.jar:?]
    at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTasks(OrderedThreadPoolExecutor.java:758) [mina-core-2.1.3.jar:?]
    at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.run(OrderedThreadPoolExecutor.java:697) [mina-core-2.1.3.jar:?]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_272

We’re facing the same problem this morning after upgrading to 4.7.0 over the weekend. As soon as they send a message in a room, it disconnects them. Same error as above in my openfire log. Running Windows Server 2019 with SQL DB

I updated the Monitoring Service plugin yesterday and after logging back in this morning, they are no longer getting kicked out when sending a message in a room. I didn’t make any other changes so that was most likely the problem.

1 Like

To avoid this problem, update the Monitoring plugin to version 2.3.0 or later when using Openfire 4.7.0.