我有两个Spring应用程序,applA和applB,在Tomcat中运行 - 都使用jarX.jar和applicationContext-x.xml。 因此,对于每个应用程序,将在上面的上下文中定义一个特定bean的一个实例 我通过使用注释通过JMX公开bean及其一些方法。 现在我想编写一个调用bean方法的测试客户端,但有时我想在applA中调用bean的方法,有时候在applB中调用bean的方法。
我该怎么做? 我在每个应用程序中都有一个名为jmxServerConfiguration的bean,每个bean都使用不同的端口。
目前在我的JMX客户端中,我使用
获取beanBeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource(applicationContextName);
theBean = beanFactory.getBean(BEAN_NAME);
但我总是得到applA的豆子。我怎么告诉它我是否想要applB或applA的bean?
我应该,(怎么样?),使用
MBeanServerConnection connection = JmxUtils.getMBeanServerConnection(url);
并在url中指定一个不同的端口,具体取决于我想从中获取bean的appl?
答案 0 :(得分:0)
将MBean导出器上的default-domain
设置为每个应用程序的不同值,并使用适当的ObjectName
通过JMX访问bean。