OpenFire Java Error


I have recently upgraded our OpenFire software to 4.1.6 on a Windows Server 2012 R2, and now I am getting a Java error no matter which version I use. Here is the output from the browser when I try to open the Spark admin portal:

Exception: java.lang.NoSuchMethodError: org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(Ljava/lang/String;Ljava/lang/Class;Ljavax/servlet/jsp/PageContext;Lorg/apache/jasper/runtime/ProtectedFunctionMapper;)Ljava/lang/Object;

at org.jivesoftware.openfire.admin.login_jsp._jspService(

at org.apache.jasper.runtime.HttpJspBase.service(

at javax.servlet.http.HttpServlet.service(

at org.eclipse.jetty.servlet.ServletHolder.handle(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at org.jivesoftware.util.LocaleFilter.doFilter(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at org.jivesoftware.admin.PluginFilter.doFilter(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at org.jivesoftware.admin.AuthCheckFilter.doFilter(

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(

at org.eclipse.jetty.servlet.ServletHandler.doHandle(

at org.eclipse.jetty.server.handler.ScopedHandler.handle(


at org.eclipse.jetty.server.session.SessionHandler.doHandle(

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(

at org.eclipse.jetty.servlet.ServletHandler.doScope(

at org.eclipse.jetty.server.session.SessionHandler.doScope(

at org.eclipse.jetty.server.handler.ContextHandler.doScope(

at org.eclipse.jetty.server.handler.ScopedHandler.handle(

at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(

at org.eclipse.jetty.server.handler.HandlerCollection.handle(

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(

at org.eclipse.jetty.server.Server.handle(

at org.eclipse.jetty.server.HttpChannel.handle(

at org.eclipse.jetty.server.HttpConnection.onFillable(


at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(

at org.eclipse.jetty.util.thread.QueuedThreadPool$

at Source)

Any help would be greatly appreciated!

It might be caused by a bad upgrade, usually when Openfire was still running during the update. First, what version were you using before and what java was you using (32 or 64 bit java/openfire?). What version have you installed (with or without Java, 32 or 64 bit)? Go to your installation folder and check if all the files in the /lib folder have same modification dates. It should be 2017.10.05 18:05.

I found that the Application and Application extension files were last modified 2/22/2017, and the rest were 10/25/2017. Is there a way to perform a repair? Or will we need to install from scratch, recreate groups, and recreate users? Thank you very much!

I believe we had 32-bit OpenFire 3.9.3, with Java 7.71. Installed 32-bit OpenFire 4.1.6, and now Java 8.31 (as needed by another program running on this server).

Database should still be ok, so i don’t think you would need to recreate everything. But you should be doing backups for such occasions, so you would revert faster to a working state. Updating from a much older version can be tricky. Go to C:\Program files\Openfire\lib, enable details view and check Date modified column. As i said it should show 10/05/2017 for all lib files. Anyway, you can make sure Openfire is stopped (maybe you have a service running) and run the upgrade again.

Thank you for the guidance. I am going to run the upgrade again. I looked and here is the list:
Activation and jdic were last modified 5/6/2014
commons-el, jasper-compiler, jasper-runtime, servlet were last modified 9/21/2017

Actually, there are no such files at all in the current version. It must be left over files from older installation. Maybe instead of a upgrade you should try uninstall, and then remove everything except for /conf /embedded-db and /resources/security folders and then do clean install.

Reinstall may have worked. A co-worker took care of this for me after-hours. He said he also opened the OpenFire server and clicked on the “Launch Admin” button after the re-update. Not sure if it was the update or hitting the Launch Admin button, but it’s working.

Just don’t use that Launch Admin launcher anymore. 4.1.6 installs service. Use it instead.