After upgrading to 3.4.2 the webinterface doesn't work

First some information about a problem with the previous version which

could be important: When I upgraded from 3.3.3 to 3.4.0 I also had a

little problem with the webinterface; when trying to login using the

secure(port: 9091) interface it wouldn’t login. But when using the

unsecure interface(port: 9090) it did work. After being logged in, it

was possible to change to the secure interface.

But back to the problem I have with this version. I upgraded to the new

version (3.4.2) using the tarball. As I can see everything did work,

but the webinterface doesn’t work. When I go the webinterface it

changes url from index.jsp to login.jsp, but I don’t get any content on

my screen. In the error.log file this message can be found:

2007.12.10 15:04:44

org.jivesoftware.util.log.util.CommonsLogFactory$1.fatal(CommonsLogFactory.java: 99)

Exception initializing page context

java.lang.NoClassDefFoundError: javax/servlet/jsp/el/ExpressionEvaluator

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(Unknown Source)

at java.security.SecureClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.access$100(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl. java:99)

at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:61)

at org.jivesoftware.openfire.admin.login_jsp._jspService(login_jsp.java:72)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1093)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:39)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:211)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)

at org.mortbay.jetty.Server.handle(Server.java:313)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:830)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)

Some system information:

CPU: Intel Xeon 3.06GHz

OS: FreeBSD 6.1 with the latest version of diablo (JRE)

I am using MySQL as external database.

Openfire 3.4.1 server information:

Environment

Java Version:

1.5.0 Sun Microsystems Inc. – Java HotSpot™ Server VM

Appserver:

jetty-6.1.x

OS / Hardware:

FreeBSD / i386

Hey Melvin,

That error is weird. The javax.servlet.jsp.el.ExpressionEvaluator class should be present in lib/openfire.jar. You can list the files in lib/openfire.jar just like you do with any other .zip file. The missing class should be in there. My guess is that openfire.jar could be corrupted maybe?

Regards,

– Gato

Thank you for your reply, Gato.

The file ‘ExpressionEvaluator.class’ is present in de package. The unpacked size is about 684 bytes.

Openfire.jar is 5548983 bytes in size.

Kind regards,

Melvin