StringUtils Error creating page

Whenever I try and create a page I get:
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils

Any idea how I can resolve this?

WARN  c.x.x.w.XWikiAction            - Uncaught exception: Error number 0 in 11: Uncaught exception
xwiki  | com.xpn.xwiki.XWikiException: Error number 0 in 11: Uncaught exception
xwiki  |        at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:662)
xwiki  |        at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:339)
xwiki  |        at com.xpn.xwiki.web.LegacyActionServlet.service(LegacyActionServlet.java:111)
xwiki  |        at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:123)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.wysiwyg.filter.ConversionFilter.doFilter(ConversionFilter.java:71)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.SetHTTPHeaderFilter.doFilter(SetHTTPHeaderFilter.java:66)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.resource.servlet.RoutingFilter.doFilter(RoutingFilter.java:135)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:212)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.SafeRedirectFilter.doFilter(SafeRedirectFilter.java:106)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.ResolveRelativeRedirectFilter.doFilter(ResolveRelativeRedirectFilter.java:129)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.SourceURLResolverFilter.doFilter(SourceURLResolverFilter.java:177)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:120)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)
xwiki  |        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)
xwiki  |        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:165)
xwiki  |        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88)
xwiki  |        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
xwiki  |        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:113)
xwiki  |        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90)
xwiki  |        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:664)
xwiki  |        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72)
xwiki  |        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
xwiki  |        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
xwiki  |        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
xwiki  |        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)
xwiki  |        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1776)
xwiki  |        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
xwiki  |        at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975)
xwiki  |        at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493)
xwiki  |        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
xwiki  |        at java.base/java.lang.Thread.run(Unknown Source)
xwiki  | Caused by: java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
xwiki  |        at org.xwiki.realtime.internal.DefaultRealtimeEditorManager.getSelectedEditor(DefaultRealtimeEditorManager.java:85)
xwiki  |        at org.xwiki.realtime.internal.XWikiRealtimeDocumentLockEditConfirmationChecker.check(XWikiRealtimeDocumentLockEditConfirmationChecker.java:68)
xwiki  |        at org.xwiki.model.validation.edit.internal.DefaultEditConfirmationCheckersManager.lambda$check$3(DefaultEditConfirmationCheckersManager.java:92)

See https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/Data/XWiki/17.6.0/#HStopbundlingCommonsLang2.x

What version of XWiki are you using?

It’s weird because you seems to not have commons lang 2 jar in WEB-INF/lib but at the same time your version of XWiki seems to require it. Maybe some bad upgrade?

I had the same error yesterday after a Debian Linux system upgrade. Among other things, the following versions were upgraded. Packages that I suspect may be responsible for the error

apache2-utils/oldstable,oldstable 2.4.65-1~deb12u1 amd64 [upgradable from: 2.4.62-1~deb12u2openjdk-17-jre-headless/oldstable,oldstable-security,oldstable,oldstable-security 17.0.16+8-1~deb12u1 amd64 [upgradable from: 17.0.15+6-1~deb12u1]xwiki-common/stable 17.8.0+1 all [upgradable from: 17.4.0] xwiki-pgsql-common/stable 17.8.0+1 all [upgradable from: 17.4.0] xwiki-xjetty-common/stable 17.8.0+1 all [upgradable from: 17.4.0] xwiki-xjetty-pgsql/stable 17.8.0+1 all [upgradable from: 17.4.0

I then reverted to the last backup and am considering excluding the responsible software packages from the upgrade. Does anyone know what packages these are?

It’s XWiki 17.8.0 and i’m using the xwiki:stable-mariadb-tomcat docker image.

To be honest it’s a pretty new install so i’m going to just try from scratch

Cheers

Was it an upgrade ? The error in the log mention a class which does not exist in 17.8.0.

I would expect this error to be found in the log until you upgrade the flavor, and then the “bad” extension should be replaced by the new one.