Spring 3.1 では、JMX を介して同じ Bean を 2 つの異なるインターフェイスを持つ 2 つの異なる Bean 名でエクスポートしようとしています。
以下は、私がやろうとしていることを示すSpring xml構成の例です。
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
<property name="beans">
<map>
<entry key="internal:name=internalName" value-ref="myBean"/>
<entry key="external:name=externalName" value-ref="myBean"/>
</map>
</property>
<property name="assembler">
<bean class="org.springframework.jmx.export.assembler.InterfaceBasedMBeanInfoAssembler">
<property name="interfaceMappings">
<props>
<prop key="internal:name=internalName">InternalMXBean</prop>
<prop key="external:name=externalName">ExternalMXBean</prop>
</props>
</property>
</bean>
</property>
myBean は、JMX 経由で公開しようとしている両方のインターフェースを実装しています。
ただし、アプリケーションを起動すると例外が発生します
javax.management.InstanceAlreadyExistsException: MXBean already registered with name internal:name=internalName
異なるインターフェイスを公開する 2 つの異なる mbean 名で同じ Bean インスタンスを登録する方法はありますか?