0 Replies Latest reply on Aug 6, 2009 3:18 PM by jaikiran

    Overriding AOP stack in an inherited domain

    jaikiran

      If i have a AOP domain with a stack named "LifecycleCallbackStack":

      <domain name="Intercepted Bean">
       ...
      
       <stack name="LifecycleCallbackStack">
       ...
       </stack>
      </domain>
      


      and other domain which extends from the earlier domain but overrides the same stack name "LifecycleCallbackStack":

      <domain name="Service Bean" extends="Intercepted Bean" inheritBindings="true">
       <!-- Override from the inherited stack -->
       <stack name="LifecycleCallbackStack">
       ... // different/additional bindings
       </stack>
      ...
      </domain>
      


      Is this expected to deploy? i.e. am i allowed to override a stack in the child domain? This deploys fine with the earlier AOP deployers, but fails with the new MC based ones which are in AS5 with the following error:

      org.jboss.deployers.spi.DeploymentException: org.jboss.deployers.spi.DeploymentException: Error deploying: LifecycleCallbackStack
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer.deployBeans(AbstractAopMetaDataDeployer.java:296)
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer.deploy(AbstractAopMetaDataDeployer.java:133)
       at org.jboss.aop.asintegration.jboss5.AOPDeploymentAopMetaDataDeployer.deploy(AOPDeploymentAopMetaDataDeployer.java:46)
       at org.jboss.aop.asintegration.jboss5.AOPDeploymentAopMetaDataDeployer.deploy(AOPDeploymentAopMetaDataDeployer.java:36)
       at org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer.deploy(AbstractSimpleVFSRealDeployer.java:56)
       at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
       at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
       at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
       at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1440)
       at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1158)
       at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1099)
       at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
       at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
       at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
       at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
       at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
       at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
       at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
       at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:782)
       at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
       at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
       at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
       at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
       at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:361)
       at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
       at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
       at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
       at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
       at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
       at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
       at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
       at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileService.java:306)
       at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271)
       at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
       at org.jboss.Main.boot(Main.java:221)
       at org.jboss.Main$1.run(Main.java:556)
       at java.lang.Thread.run(Thread.java:595)
      Caused by: org.jboss.deployers.spi.DeploymentException: Error deploying: LifecycleCallbackStack
       at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer$MyBeanMetaDataDeployer.deploy(AbstractAopMetaDataDeployer.java:390)
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer$MyBeanMetaDataDeployer.access$100(AbstractAopMetaDataDeployer.java:337)
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer.deployBeans(AbstractAopMetaDataDeployer.java:270)
       ... 36 more
      Caused by: java.lang.IllegalStateException: LifecycleCallbackStack is already installed.
       at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:716)
       at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:540)
       at org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer$MyBeanMetaDataDeployer.deploy(AbstractAopMetaDataDeployer.java:386)
       ... 38 more
      

      Looks like the deployer org.jboss.aop.asintegration.jboss5.AbstractAopMetaDataDeployer tries to deploy the stack in the MC kernel with the same name.

      Is it an implementation issue in the deployer or is such configuration not allowed in AOP?