In Openfire 5.0.0, the embedded webserver (Jetty) was updated. This causes an incompatibility with the Candy plugin, which will log an error like this when it is started:
2024.11.19 19:45:03.549 ERROR [PluginMonitorExec-2]: org.jivesoftware.openfire.container.PluginManager - An exception occurred while loading plugin 'httpfileup>
java.lang.VerifyError: Bad type on operand stack
Exception Details:
Location:
org/eclipse/jetty/servlet/ServletContextHandler.setGzipHandler(Lorg/eclipse/jetty/server/handler/gzip/GzipHandler;)V @6: invokespecial
Reason:
Type 'org/eclipse/jetty/server/handler/gzip/GzipHandler' (current frame, stack[2]) is not assignable to 'org/eclipse/jetty/server/handler/HandlerWrapper'
Current Frame:
bci: @6
flags: { }
locals: { 'org/eclipse/jetty/servlet/ServletContextHandler', 'org/eclipse/jetty/server/handler/gzip/GzipHandler' }
stack: { 'org/eclipse/jetty/servlet/ServletContextHandler', 'org/eclipse/jetty/server/handler/gzip/GzipHandler', 'org/eclipse/jetty/server/handler/gzip/Gzi>
Bytecode:
0000000: 2a2a b400 352b b700 762a 2bb5 0035 2ab7
0000010: 0018 b1
at org.igniterealtime.openfire.plugins.httpfileupload.HttpFileUploadPlugin.initializePlugin(HttpFileUploadPlugin.java:452) ~[httpfileupload-1.4.2-SNAPS>
at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:640) ~[xmppserver-5.0.0-SNAPSHOT.jar:5.0.0-SNAPSHOT]
at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:380) ~[xmppserver-5.0.0-SNAPSHOT.jar:5.0.0-SNAPSHOT]
at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:368) ~[xmppserver-5.0.0-SNAPSHOT.jar:5.0.0-SNAPSHOT]
at java.util.concurrent.FutureTask.run(FutureTask.java:317) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1583) [?:?]
In Openfire 5.0.0, the embedded webserver (Jetty) was updated. This causes an incompatibility with the Candy plugin, which will log an error like this when it is started: