Java 配置并连接到SpringJMX

Java 配置并连接到SpringJMX,java,spring,jmx,Java,Spring,Jmx,我正在尝试为我的独立Spring应用程序配置JMX控制台 我已将其配置为: 应用程序上下文: <?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:p="http://www.springframework.or

我正在尝试为我的独立Spring应用程序配置JMX控制台

我已将其配置为:

应用程序上下文:

<?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:p="http://www.springframework.org/schema/p"
    xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"


    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd
    http://www.springframework.org/schema/aop 
    http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">

    <!-- Must for auto wiring 
    <context:annotation-config />
    -->

    <context:component-scan base-package="com.fixgw.beans">
    </context:component-scan>


    <bean id="FeedListenerBean" class="com.fixgw.beans.FeedListenerBean">
    </bean>

    <bean id="TriggerBean" class="com.fixgw.test.TriggerBean">
    </bean>


    <bean id="mbeanServer" class="org.springframework.jmx.support.MBeanServerFactoryBean" >
    <property name="locateExistingServerIfPossible" value="true" />

    </bean>


    <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
        <property name="beans">
            <map>
                <entry key="bean:name=TriggerBean1" value-ref="TriggerBean" />
            </map>
        </property>
        <property name="server" ref="mbeanServer" />
    </bean>
</beans>
  • 这对配置来说够了吗
  • 现在,为了访问控制台,我应该连接到哪个本地地址:端口
  • 谢谢,
    ray

    您有JMX服务器,但您需要一个HTMLAdapter来通过浏览器查看这些bean。e、 g.来自:

    
    

    注意,我在这里假设HTML/浏览器访问。有关在代码中配置适配器的Oracle教程,请参阅。

    如何在它们之间集成?你能给我举个例子吗?我想以上大部分是你需要的。HTMLAdapter与其他bean一起插入JMX框架。请注意,像JBoss这样的应用服务器将HTMLAdapter作为一项服务提供,但看起来您必须自己提供。尝试上述方法并检查端口8082(默认值,IIRC)
    public class TriggerBean implements IJmxTriggerBean
    {
        static Logger logger = Logger.getLogger(TriggerBean.class);
    
        FeedListenerBean fe = null;
    
        public void start()
        {
            try
            {
                // init();
                PropertyConfigurator.configure(FixGWConstants.LOG4J_PATH);
                ApplicationContext context = new ClassPathXmlApplicationContext(FixGWConstants.APPLICATION_CONTEXT_XML);
                fe = (FeedListenerBean) context.getBean("FeedListenerBean");
                Thread t=new Thread()
                {
                    public void run()
                    {
                        while (true)
                        {
                            System.out.println("a");
                            try
                            {
                                Thread.sleep(1000);
                            }
                            catch (InterruptedException e)
                            {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            }
                        }
                    }
                };
                t.run();
                doTheListen();
    
            }
            catch (Throwable t)
            {
                logger.error(t);
                System.out.println(t);
            }
    
        }
    
        public void doTheListen()
        {
            fe.listen();
        }
    
    }
    
    
    package com.finbird.fixgw.test;
    
    public interface IJmxTriggerBean
    {
        public void doTheListen();
    }
    
      <bean id="htmlAdaptor" class="com.sun.jdmk.comm.HtmlAdaptorServer" init-method="start" />
    
      <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
        <property name="beans">
         <map>
           <entry key="adaptor:name=htmlAdaptor" value-ref="htmlAdaptor" />
           <entry key="bean:name=calculatorConfigBean" value-ref="calculatorConfig" />
         </map>
        </property>
        <property name="server" ref="mbeanServer" />
      </bean>