Search code examples
deploymentjbossliferayjboss7.xliferay-6

How to solve hook deployment error on JBOSS AS7: Failed to process phase INSTALL of deployment


I am getting the following error (full stack-trace) when I try to deploy my TagsNavigation-hook.war:

14:04:37,562 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-3) Starting deployment of "TagsNavigation-hook.war"
14:04:37,589 INFO  [org.jboss.as.jpa] (MSC service thread 1-1) added javax.persistence.api dependency to TagsNavigation-hook.war
14:04:37,596 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: Failed to start service jboss.deployment.unit."TagsNavigation-hook.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."TagsNavigation-hook.war".INSTALL: Failed to process phase INSTALL of deployment "TagsNavigation-hook.war"
        at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [:1.7.0_04]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [:1.7.0_04]
        at java.lang.Thread.run(Unknown Source) [:1.7.0_04]
Caused by: java.lang.RuntimeException: Failed to load class com.liferay.taglib.portlet.NamespaceTag
        at org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:141)
        at org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:122)
        at org.jboss.as.ee.component.LazyValue.get(LazyValue.java:40)
        at org.jboss.as.ee.component.EEApplicationDescription.getClassConfiguration(EEApplicationDescription.java:183)
        at org.jboss.as.ee.component.ComponentDescription.createConfiguration(ComponentDescription.java:153)
        at org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:70)
        at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
        ... 5 more
Caused by: java.lang.ClassNotFoundException: com.liferay.taglib.portlet.NamespaceTag from [Module "deployment.TagsNavigation-hook.war:main" from Service Module Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:361)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:333)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:310)
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:103)
        at java.lang.Class.forName0(Native Method) [:1.7.0_04]
        at java.lang.Class.forName(Unknown Source) [:1.7.0_04]
        at org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:139)
        ... 11 more

This was working before, but is not working after I undeployed by directly deleting the TagsNavigation-hook.war from the location \liferay-portal-6.1.10-ee-ga1\jboss-7.0.2\standalone\deployments, on another Jboss server I undeployed through liferay's Control Panel --> Update Manager

I tried the following:

  1. Renaming the file TagsNavigation-hook.war.failed to TagsNavigation-hook.war.dodeploy but still the same error.
  2. Stopping the server, then change it to TagsNavigation-hook.war.dodeploy and then restart the server but still the same thing.
  3. Completely deleting the TagsNavigation-hook.war and TagsNavigation-hook.war.failed files and then deploying it. I tried this as a hot deployment as well as by stopping the server --> deploying --> starting the server.

Other plugin deployments (themes, hooks and portlets) are working fine. And this hook is also working fine on Tomcat-7!

Environment: Liferay 6.1.10 EE bundled with JBOSS 7.0.2 on Linux


Solution

  • Now it is working.

    I just added this property: portal-dependency-jars=util-taglib.jar inside liferay-plugin-package.properties and then deployed.

    This feels quite strange because the hook works perfectly fine on tomcat without defining the property and only on Jboss it gave this error and that too only after I undeployed it.