Something rotten in ejb3 deployers?
adrian.brock Apr 22, 2008 9:38 AMI think this probably relates to whatever problem has caused the
classloader leak in the ejb3 deployers last week:
http://hudson.jboss.org/hudson/job/JBoss-AS-5.0.x-TestSuite-sun15/533/testReport/org.jboss.test.classloader.leak.test/
When I run the ee5appclient tests (which fail), sometimes it throws an exception at
shutdown:
15:27:14,432 WARN [AspectDeployer] Error undeploying xml ejb3-interceptors-aop.xml from org.jboss.aop.AspectManager@130e37 java.lang.RuntimeException: java.lang.IllegalStateException: BaseClassLoader@1a6b660{vfsfile:/home/ejort/jboss-head/testsuite/output/lib/ee5client-test.ear} classLoader is not connected to a domain (probably undeployed?) for class org.jboss.ejb3.annotation.SecurityDomain at org.jboss.aop.pointcut.Util.matchesClassExpr(Util.java:137) at org.jboss.aop.pointcut.MethodMatcher.matchesClass(MethodMatcher.java:264) at org.jboss.aop.pointcut.MethodMatcher.matches(MethodMatcher.java:106) at org.jboss.aop.pointcut.MethodMatcher.visit(MethodMatcher.java:100) at org.jboss.aop.pointcut.ast.ASTMethod.jjtAccept(ASTMethod.java:44) at org.jboss.aop.pointcut.ExecutionMethodMatcher.visit(ExecutionMethodMatcher.java:58) at org.jboss.aop.pointcut.ast.ASTExecution.jjtAccept(ASTExecution.java:37) at org.jboss.aop.pointcut.MatcherHelper.visit(MatcherHelper.java:89) at org.jboss.aop.pointcut.MatcherHelper.matches(MatcherHelper.java:83) at org.jboss.aop.pointcut.PointcutExpression.matchesExecution(PointcutExpression.java:119) at org.jboss.aop.Advisor.resolveMethodPointcut(Advisor.java:893) at org.jboss.aop.ClassAdvisor.updateInterceptorChains(ClassAdvisor.java:642) at org.jboss.aop.ClassAdvisor.doRebuildInterceptors(ClassAdvisor.java:897) at org.jboss.aop.ClassAdvisor$RebuildInterceptorsAction$2.rebuildInterceptors(ClassAdvisor.java:2012) at org.jboss.aop.ClassAdvisor.rebuildInterceptors(ClassAdvisor.java:877) at org.jboss.aop.ClassAdvisor.removeAdviceBindings(ClassAdvisor.java:426) at org.jboss.aop.AspectManager.removeBindings(AspectManager.java:1404) at org.jboss.aop.Domain.removeBindings(Domain.java:198) at org.jboss.aop.AspectXmlLoader.bulkUndeploy(AspectXmlLoader.java:1216) at org.jboss.aop.AspectXmlLoader.undeployDomain(AspectXmlLoader.java:1087) at org.jboss.aop.AspectXmlLoader.undeployTopElements(AspectXmlLoader.java:1301) at org.jboss.aop.AspectXmlLoader.undeployXML(AspectXmlLoader.java:1205) at org.jboss.aop.deployers.AspectDeployer.undeployXml(AspectDeployer.java:205) at org.jboss.aop.deployers.AspectDeployer.undeployXml(AspectDeployer.java:189) at org.jboss.aop.deployers.AspectDeployer.undeploy(AspectDeployer.java:134) at org.jboss.deployers.vfs.spi.deployer.AbstractVFSRealDeployer.internalUndeploy(AbstractVFSRealDeployer.java:54) at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112) at org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:197) at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1189) at org.jboss.deployers.plugins.deployers.DeployersImpl.uninstall(DeployersImpl.java:1144) at org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:354) at org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1408) at org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1066) at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:679) at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:456) at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:510) at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541) at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unload(ProfileServiceBootstrap.java:373) at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unloadProfile(ProfileServiceBootstrap.java:334) at org.jboss.system.server.profileservice.ProfileServiceBootstrap.shutdown(ProfileServiceBootstrap.java:162) at org.jboss.bootstrap.AbstractServerImpl.shutdownServer(AbstractServerImpl.java:508) at org.jboss.bootstrap.AbstractServerImpl$ShutdownHook.run(AbstractServerImpl.java:827) Caused by: java.lang.IllegalStateException: BaseClassLoader@1a6b660{vfsfile:/home/ejort/jboss-head/testsuite/output/lib/ee5client-test.ear} classLoader is not connected to a domain (probably undeployed?) for class org.jboss.ejb3.annotation.SecurityDomain at org.jboss.classloader.spi.base.BaseClassLoader.loadClassFromDomain(BaseClassLoader.java:723) at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:372) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.jboss.ejb3.metadata.annotation.AnnotationRepositoryToMetaData.loadClass(AnnotationRepositoryToMetaData.java:209) at org.jboss.ejb3.metadata.annotation.AnnotationRepositoryToMetaData.hasClassAnnotation(AnnotationRepositoryToMetaData.java:328) at org.jboss.aop.Advisor.hasAnnotation(Advisor.java:404) at org.jboss.aop.Advisor.hasAnnotation(Advisor.java:379) at org.jboss.aop.pointcut.Util.matchesClassExpr(Util.java:115) ... 41 more
So something is not getting cleaned up in AOP/EJB3 land.
The first link shows it is not related to deployment failover.