2013-06-23 4 views
0

Я пытаюсь настроить activemq таким образом, чтобы брокеры MBeans были доступны в jmx-консоли jboss, доступной по адресу http://localhost:8080/jmx-console.Как выставить activemq JMX MBeans через jmx-консоль через jboss?

Я попытался

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xmlns:context="http://www.springframework.org/schema/context" 
xmlns:tx="http://www.springframework.org/schema/tx"  xmlns:mvc="http://www.springframework.org/schema/mvc" 
xmlns:util="http://www.springframework.org/schema/util"  xmlns:amq="http://activemq.apache.org/schema/core" 
xsi:schemaLocation="http://www.springframework.org/schema/beans  http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
http://www.springframework.org/schema/mvc  http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
http://www.springframework.org/schema/tx  http://www.springframework.org/schema/tx/spring-tx-3.1.xsd 
http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context-3.1.xsd 
http://www.springframework.org/schema/util  http://www.springframework.org/schema/util/spring-util-3.1.xsd 
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq- core.xsd"> 
<beans> 
    <broker xmlns="http://activemq.apache.org/schema/core" useJmx="true" 
     useShutdownHook="false"> 
     <!-- Use the following to configure how ActiveMQ is exposed in JMX --> 
     <managementContext> 
      <!-- <managementContext createConnector="false" /> --> 
      <managementContext> 
       <MBeanServer> 
        <bean class="org.jboss.mx.util.MBeanServerLocator" 
         factory-method="locateJBoss" xmlns="" /> 
       </MBeanServer> 
      </managementContext> 
     </managementContext> 
    </broker> 
</beans> 

Когда я развернуть войну кусок XML дает ошибку

cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'bean'. 

Любая идея, как сделать ActiveMQ MBeans интеграции с JBoss веб-основе JMX-консоль?

Настройки по умолчанию с помощью createConnector = false не будут работать для меня, потому что jboss настроен на не использовать порт 1099 RMI. Локализовать метод factory-method на сайте org.jboss.mx.util.MBeanServerLocator - единственный способ (я знаю) получить jboss MBeanServer.

ответ

0

Согласно spring JMX do с, вы могли бы попробовать что-то вроде этого:

<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter"> 
    <property name="server"> 
     <bean id="mBeanServerLocator" class="org.jboss.mx.util.MBeanServerLocator" 
        factory-method="locateJBoss" /> 
    </property> 
    </bean> 
<broker xmlns="http://activemq.apache.org/schema/core" useJmx="true" 
     useShutdownHook="false"> 
     <!-- Use the following to configure how ActiveMQ is exposed in JMX --> 
     <managementContext> 
      <managementContext MBeanServer="exporter"/>  
      <!-- I am not sure what MBeanServer attribute is waiting for (a ref, an id, something else ...)--> 
     </managementContext> 
    </broker> 
+0

осла этого кода Spring жалуется, что «экспортер» должен быть строкой, а не ссылка боба в строке user1046143