Legacy Knowledge Base
Published Jun. 30, 2025

The Liferay Server Cannot Start Up After Installing a Hotfix

Written By

Laura Li

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

Legacy Article

You are viewing an article from our legacy "FastTrack" publication program, made available for informational purposes. Articles in this program were published without a requirement for independent editing or verification and are provided"as is" without guarantee.

Before using any information from this article, independently verify its suitability for your situation and project.

Issue

  • The Liferay server cannot start up after installing the hotfix (For example, hotfix-8495).
  • In a Tomcat server, the following error occurs:
    ERROR [main][PortalContextLoaderListener:114] java.lang.NullPointerException
    java.lang.NullPointerException
            at com.liferay.portal.kernel.servlet.DirectServletRegistryUtil.clearServlets(DirectServletRegistryUtil.java:25)
            at com.liferay.portal.spring.context.PortalContextLoaderListener.contextDestroyed(PortalContextLoaderListener.java:137)
            at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4816)
            at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5477)
            at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:187)
            at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
            at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698)
            at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:696)
            at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:690)
            at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1889)
            at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
            at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
            at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
            at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:583)
            at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:473)
            at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1618)
            at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:319)
            at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
            at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
            at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
            at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
            at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
            at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
            at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
            at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
            at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
            at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
            at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
            at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
            at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
            at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.base/java.lang.reflect.Method.invoke(Method.java:566)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
          
  • In JBoss server, the following error occurs:
    ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 79) MSC000001: Failed to start service jboss.undertow.deployment.default-server.default-host./: org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.NullPointerException
    	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:85)
    	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    	at java.lang.Thread.run(Thread.java:748)
    	at org.jboss.threads.JBossThread.run(JBossThread.java:320)
    Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.NullPointerException
    	at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:231)
    	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:100)
    	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:82)
    	... 6 more
    Caused by: java.lang.RuntimeException: java.lang.NullPointerException
    	at com.liferay.portal.spring.context.PortalContextLoaderListener.contextInitialized(PortalContextLoaderListener.java:314)
    	at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187)
    	at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:198)
    	... 8 more
    Caused by: java.lang.NullPointerException
    	at com.liferay.portal.bootstrap.ModuleFrameworkImpl._isFragmentBundle(ModuleFrameworkImpl.java:1179)
    	at com.liferay.portal.bootstrap.ModuleFrameworkImpl._setUpInitialBundles(ModuleFrameworkImpl.java:1497)
    	at com.liferay.portal.bootstrap.ModuleFrameworkImpl.startFramework(ModuleFrameworkImpl.java:407)
    	at com.liferay.portal.module.framework.ModuleFrameworkUtilAdapter.startFramework(ModuleFrameworkUtilAdapter.java:100)
    	at com.liferay.portal.spring.context.PortalContextLoaderListener.contextInitialized(PortalContextLoaderListener.java:309)
    	... 10 more
    	

 

Environment

  • Liferay DXP 7.1, Liferay DXP 7.2

 

Resolution

  • This issue may caused by duplicate jars in {Liferay_Home}/osgi/marketplace. To check if duplicate jars exist, use the following command:
    for f in *.lpkg; do echo "$f: "; unzip -l "$f" | grep hotfix; done
  • If duplicate jars do exist, for example, jars ending with "hotfix-4483" and "hotfix-8495", use the below command to remove the ones ending with "hotfix-4483" or delete them manually so that only one version remains (the one which ends with "hotfix-8495"):
    for f in *.lpkg; do echo "$f: "; unzip -l "$f" | grep 4483| xargs zip -d "$f";done
  • Delete the usual directories {Liferay_Home}/osgi/state, {Tomcat_Home}/temp and {Tomcat_Home}/work
  • Restart the server

 

 

 

Did this article resolve your issue ?

Legacy Knowledge Base