dev@glassfish.java.net

HK2 secret sauce--why don't _at_Extract and _at_Inject work

From: Lloyd L Chambers <Lloyd.Chambers_at_Sun.COM>
Date: Thu, 13 Mar 2008 15:09:24 -0700

I've written this and I see that it has been started:

@Service
@Scoped(Singleton.class)
@Async
public final class AppserverMBeanServerFactory implements Startup,
PostConstruct, PreDestroy
{
     @Extract
     private final MBeanServer officialMBeanServer;
    ...
}

Then I have this elsewhere, later, I'm sure the above has long since
executed:

abstract class AMXCommandBase implements AdminCommand {
     @Inject
     private MBeanServer mMBeanServer;
     ...
}

I get this error:

Mar 13, 2008 3:08:51 PM
SEVERE: org.jvnet.hk2.component.UnsatisfiedDepedencyException:
Unsatisfied dependency exception : private
javax.management.MBeanServer
org.glassfish.admin.amx.cmd.AMXCommandBase.mMBeanServer
Mar 13, 2008 3:08:51 PM
SEVERE: at
org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:
83)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.hk2.component.AbstractWombImpl.inject(AbstractWombImpl.java:64)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.hk2.component.ConstructorWomb.initialize(ConstructorWomb.java:
50)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:39)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:
22)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:71)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com
.sun
.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:
24)
Mar 13, 2008 3:08:51 PM
SEVERE: at org.jvnet.hk2.component.Habitat.getComponent(Habitat.java:
284)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com
.sun.enterprise.v3.admin.CommandRunner.getCommand(CommandRunner.java:
272)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.enterprise.v3.admin.CommandRunner.doCommand(CommandRunner.java:
75)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:
144)
Mar 13, 2008 3:08:51 PM
SEVERE: at
com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:109)








---
Lloyd L Chambers
lloyd.chambers_at_sun.com
Sun Microsystems, Inc