Undeploying during shutdown generates
esmithbss Jan 5, 2006 5:55 PMI have a brand new install of JBoss 4.0.3SP1 with JBoss Portal 2.2.0 on a mysql 4.1 database using the mysql-connector-java-3.1.2.jar connector which I am assembling for development purposes. It is launched using the Java Service Wrapper (from wrapper.tanukisoftware.org).
JBoss launched and shutdown fine after it was installed, but once I added the JBoss Portal package (dropping the jboss-portal.sar and my configured /setup/portal-mysql-ds.xml files into my deploy instance), I could launch JBoss and look at the portal, but when I attempted to shut it down, I received a sequence of stack dumps. They are all very similar and lead me to believe I have missed something in the portal configuration.
Here is part of the log from the wrapper shutdown process:
jvm 1 | 16:21:32,457 INFO [Server] Runtime shutdown hook called, forceHalt: true
jvm 1 | 16:21:32,457 INFO [Server] JBoss SHUTDOWN: Undeploying all packages
jvm 1 | 16:21:32,458 INFO [TomcatDeployer] undeploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
jvm 1 | 16:21:32,588 ERROR [MainDeployer] Undeployment failed: file:/opt/tools/jboss-4.0.3SP1/server/Polydactes/deploy/jboss-portal.sar/portal-samples.war/WEB-INF/portlet.xml
jvm 1 | org.jboss.deployment.DeploymentException: This web app does not exist here; - nested throwable: (java.lang.IllegalArgumentException: This web app does not exist here)
jvm 1 | at org.jboss.portal.portlet.deployment.jboss.PortletAppDeployment.destroy(PortletAppDeployment.java:171)
jvm 1 | at org.jboss.portal.server.deployment.jboss.ServerDeployer.destroy(ServerDeployer.java:242)
jvm 1 | at org.jboss.deployment.MainDeployer.destroy(MainDeployer.java:675)
jvm 1 | at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:614)
jvm 1 | at org.jboss.deployment.MainDeployer.shutdown(MainDeployer.java:500)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1 | at java.lang.reflect.Method.invoke(Method.java:585)
jvm 1 | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
jvm 1 | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
jvm 1 | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
jvm 1 | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.shutdownDeployments(ServerImpl.java:988)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.shutdown(ServerImpl.java:963)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.run(ServerImpl.java:941)
jvm 1 | Caused by: java.lang.IllegalArgumentException: This web app does not exist here
jvm 1 | at org.jboss.portal.server.impl.app.JBossWebAppRegistryImpl.unregisterWebApp(JBossWebAppRegistryImpl.java:87)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1 | at java.lang.reflect.Method.invoke(Method.java:585)
jvm 1 | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
jvm 1 | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
jvm 1 | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
jvm 1 | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
jvm 1 | at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
jvm 1 | at $Proxy64.unregisterWebApp(Unknown Source)
jvm 1 | at org.jboss.portal.portlet.deployment.jboss.PortletAppDeployment.destroy(PortletAppDeployment.java:166)
jvm 1 | ... 19 more
jvm 1 | 16:21:32,590 INFO [LayoutDeployment] destroying layout(s), found in : /portal
jvm 1 | 16:21:32,590 INFO [LayoutDeployment] done destroying layout(s), found in : /portal
jvm 1 | 16:21:32,591 INFO [LayoutDeployment] destroying layout(s), found in : /portal
jvm 1 | 16:21:32,591 INFO [LayoutDeployment] done destroying layout(s), found in : /portal
jvm 1 | 16:21:32,603 INFO [ThemeDeployment] destroying theme(s), found in : portal
jvm 1 | 16:21:32,604 INFO [ThemeDeployment] done destroying theme(s), found in : portal
jvm 1 | 16:21:32,604 INFO [LayoutDeployment] destroying layout(s), found in : portal
jvm 1 | 16:21:32,605 INFO [LayoutDeployment] done destroying layout(s), found in : portal
jvm 1 | 16:21:32,606 ERROR [MainDeployer] Undeployment failed: file:/opt/tools/jboss-4.0.3SP1/server/Polydactes/deploy/jboss-portal.sar/portal-core.war/WEB-INF/portlet.xml
jvm 1 | org.jboss.deployment.DeploymentException: This web app does not exist here; - nested throwable: (java.lang.IllegalArgumentException: This web app does not exist here)
jvm 1 | at org.jboss.portal.portlet.deployment.jboss.PortletAppDeployment.destroy(PortletAppDeployment.java:171)
jvm 1 | at org.jboss.portal.server.deployment.jboss.ServerDeployer.destroy(ServerDeployer.java:242)
jvm 1 | at org.jboss.deployment.MainDeployer.destroy(MainDeployer.java:675)
jvm 1 | at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:614)
jvm 1 | at org.jboss.deployment.MainDeployer.shutdown(MainDeployer.java:500)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1 | at java.lang.reflect.Method.invoke(Method.java:585)
jvm 1 | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
jvm 1 | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
jvm 1 | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
jvm 1 | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.shutdownDeployments(ServerImpl.java:988)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.shutdown(ServerImpl.java:963)
jvm 1 | at org.jboss.system.server.ServerImpl$ShutdownHook.run(ServerImpl.java:941)
jvm 1 | Caused by: java.lang.IllegalArgumentException: This web app does not exist here
jvm 1 | at org.jboss.portal.server.impl.app.JBossWebAppRegistryImpl.unregisterWebApp(JBossWebAppRegistryImpl.java:87)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
jvm 1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
jvm 1 | at java.lang.reflect.Method.invoke(Method.java:585)
jvm 1 | at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
jvm 1 | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
jvm 1 | at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
jvm 1 | at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
jvm 1 | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
jvm 1 | at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
jvm 1 | at $Proxy64.unregisterWebApp(Unknown Source)
jvm 1 | at org.jboss.portal.portlet.deployment.jboss.PortletAppDeployment.destroy(PortletAppDeployment.java:166)
jvm 1 | ... 19 more
The database configuration I used is :
<?xml version="1.0" encoding="UTF-8"?>
<datasources> <local-tx-datasource> <jndi-name>PortalDS</jndi-name> <connection-url>jdbc:mysql://localhost:3306/jbossportal?useServerPrepStmts=false</connection-url> <driver-class>org.gjt.mm.mysql.Driver</driver-class> <user-name>portaladmin</user-name> <password>************</password> </local-tx-datasource> </datasources>
The user portaladmin is defined in the database will all privileges against the jbossportal database using both portaladmin@localhost and portaladmin@%.
This occurred during installation validation so JBoss was being run as user 'root' using the following command:
/opt/bin/wrapper /etc/jboss_svc.conf wrapper.pidfile=/opt/ref/jboss-as/JBoss.pid
Which ultimately launches JBoss by calling org.jboss.Main with the parameters "-c Polydactes -b 130.38.52.48"
Please assist me in isolating the problem.
Thank you.
Eric M. Smith