Hi All,
I started using the aries jmx whiteboard bundle to register mbeans for
Apache Karaf.
When I register the service for the mbean the whiteboard bundle picks up
my mbean but then the following eception occurs:
----
2012-04-03 16:14:23,601 | ERROR | l Console Thread |
MBeanHolder | aries.jmx.whiteboard.MBeanHolder 63
| 75 - org.apache.aries.jmx.whiteboard - 0.3.0 | register: Failure
registering MBean org.apach
e.karaf.packages.core.internal.Packages@1b6d56
javax.management.NotCompliantMBeanException: MBean class
Proxyaaaf7dc3_99e0_4e6d_a856_3c442bfe30ed does not implement
DynamicMBean, neither follows the Standard MBean conventions
(javax.management.NotCompliantMBeanExcept
ion: Class Proxyaaaf7dc3_99e0_4e6d_a856_3c442bfe30ed is not a JMX
compliant Standard MBean) nor the MXBean conventions
(javax.management.NotCompliantMBeanException:
Proxyaaaf7dc3_99e0_4e6d_a856_3c442bfe30ed: Class Proxya
aaf7dc3_99e0_4e6d_a856_3c442bfe30ed is not a JMX compliant MXBean)
----
It looks like blueprint creates a proxy of my mbean which then can not
be registered as an mbean.
Any ideas what I can do?
Christian
So my blueprint.xml looks like this:
---
<ext:property-placeholder/>
<bean id="packageService"
class="org.apache.karaf.packages.core.internal.PackageServiceImpl">
<argument ref="blueprintBundleContext"/>
</bean>
<service interface="org.apache.karaf.packages.core.PackageService"
ref="packageService"/>
<bean id="packageMBean"
class="org.apache.karaf.packages.core.internal.Packages">
<argument ref="packageService" />
</bean>
<service interface="org.apache.karaf.packages.core.PackagesMBean"
ref="packageMBean">
<service-properties>
<entry key="jmx.objectname"
value="org.apache.karaf:type=package,name=${karaf.name}"/>
</service-properties>
</service>
---
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
Talend Application Integration Division http://www.talend.com