While figuring out what's the problem with ServiceSupportMBean,
I saw that ServiceControllerContext's target is null
if mbean is registered via @JMX on plain MC pojo.
So things like this don't get what they expect:
| <deployment xmlns="urn:jboss:bean-deployer:2.0">
|
| <bean name="XMLLoginConfig"
class="org.jboss.demos.models.old.XMLLoginConfig"/>
|
| <bean name="SecurityConfig"
class="org.jboss.demos.models.old.SecurityConfig">
| <property name="defaultLoginConfig"><inject
bean="XMLLoginConfig"/></property>
| </bean>
|
| <bean name="SecurityChecker"
class="org.jboss.demos.models.old.Checker">
| <property name="loginConfig"><inject
bean="jboss.security:service=XMLLoginConfig"/></property>
| <property name="securityConfig"><inject
bean="jboss.security:service=SecurityConfig"/></property>
| </bean>
|
| </deployment>
|
Where XMLLoginConfig has
| @JMX(name="jboss.security:service=XMLLoginConfig",
exposedInterface=XMLLoginConfigMBean.class)
| public class XMLLoginConfig extends ServiceMBeanSupport implements
XMLLoginConfigMBean
|
and SecurityConfig
| @JMX(name = "jboss.security:service=SecurityConfig", exposedInterface =
SecurityConfigMBean.class)
| public class SecurityConfig extends ServiceMBeanSupport implements
SecurityConfigMBean
|
And then SecurityChecker was getting nulls injected at Configure:
| public class Checker
| {
| private boolean loginConfigSet;
| private boolean securityConfigSet;
|
| public void setLoginConfig(XMLLoginConfig loginConfig)
| {
| this.loginConfigSet = true;
| }
|
| public void setSecurityConfig(SecurityConfig securityConfig)
| {
| this.securityConfigSet = true;
| }
|
| public void start()
| {
| if (loginConfigSet == false)
| throw new IllegalArgumentException("Login config set not called");
| if (securityConfigSet == false)
| throw new IllegalArgumentException("Security config set not
called");
| }
| }
|
Is this expected?
Since looking at the system-jmx code,
the ServiceControllerContextActions::getLifecycleOnly
doesn't seem to have the code to actually set the existing MC pojo
target on the coresponding ServiceControllerContext.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4169568#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...