"kabir.khan(a)jboss.com" wrote : I have attempted to add the correct manager to
the metadata for the deployment in my deployer
|
| | unit.getMutableMetaData().addMetaData(scopedManager, AspectManager.class);
| |
|
| This gets added to a MemoryMetaDataLoader with
|
| |
ScopeKey=[APPLICATION=vfszip:/Users/kabir/sourcecontrol/jboss-head/testsuite/output/lib/aop-scopeddependency-scoped.sar]
| |
|
| However, the bean's MetaData does not contain that, it only contains
MetaDataRetrievals for the following levels:
|
| | WORK=10814978]
| |
[INSTANCE=ScopedManager_6_vfszip:/Users/kabir/sourcecontrol/jboss-head/testsuite/output/lib/aop-scopeddependency-scoped.sar]
| | [CLASS=class org.jboss.test.aop.scopeddependency.ScopedTester]
| | [JVM=THIS]
| |
| Is this a bug, or have I completely misunderstood?
|
|
It's not implemented. The ScopeInfo used by the KernelControllerContext
that it passes to the metadata repository is not populated from the
scope created for the Deployment component by the ScopeBuilder.
To make this work, you'd need something like the following (untested):
| Index: src/main/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataDeployer.java
| ===================================================================
| --- src/main/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataDeployer.java
(revision 76634)
| +++ src/main/org/jboss/deployers/vfs/deployer/kernel/BeanMetaDataDeployer.java
(working copy)
| @@ -27,12 +27,14 @@
| import org.jboss.beans.metadata.spi.ClassLoaderMetaData;
| import org.jboss.beans.metadata.spi.ValueMetaData;
| import org.jboss.dependency.spi.Controller;
| +import org.jboss.dependency.spi.ScopeInfo;
| import org.jboss.deployers.spi.DeploymentException;
| import org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer;
| import org.jboss.deployers.structure.spi.DeploymentUnit;
| import org.jboss.kernel.Kernel;
| import org.jboss.kernel.plugins.dependency.AbstractKernelControllerContext;
| import org.jboss.kernel.spi.dependency.KernelControllerContext;
| +import org.jboss.metadata.spi.scope.ScopeKey;
|
| /**
| * BeanMetaDataDeployer.<p>
| @@ -108,6 +110,9 @@
| }
| }
| KernelControllerContext context = new AbstractKernelControllerContext(null,
deployment, null);
| + ScopeInfo scopeInfo = context.getScopeInfo();
| + scopeInfo.setScope(unit.getScope());
| + scopeInfo.setMutableScope(unit.getMutableScope());
| try
| {
| controller.install(context);
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4168631#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...