2014-12-15 1 views
-3

경로를 모니터하고 관리하기 위해 JMX를 낙타와 함께 사용하려고합니다. jmxAgent 구성은 다음과 같습니다.낙타에서 jmxAgent 구성

<camelContext xmlns="http://camel.apache.org/schema/spring"> 
    <jmxAgent id="agent" 
       connectorPort="9999" 
       createConnector="false" 
       usePlatformMBeanServer="true" 
       serviceUrlPath="/jmxrmi/camel" 
       loadStatisticsEnabled="true" 
       statisticsLevel="All"/> 

    <route> 

간단한 자바 클래스는 "jmxAgent"

 try{ 
      JMXServiceURL url = new JMXServiceURL("service:jmx:rmi://localhost:9999/jndi/rmi://localhost:1099/jmxrmi/camel"); 
      JMXConnector jmxc = JMXConnectorFactory.connect(url); 

      MBeanServerConnection server = jmxc.getMBeanServerConnection(); 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

에 연결하는 데 사용하지만 나에게이 문제를 해결하기 위해 몇 가지 포인터를주십시오 다음과 같은 예외

java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
    java.net.ConnectException: Connection refused: connect] 
    at javax.management.remote.rmi.RMIConnector.connect(Unknown Source) 
    at javax.management.remote.JMXConnectorFactory.connect(Unknown Source) 
    at javax.management.remote.JMXConnectorFactory.connect(Unknown Source) 
    at com.acme.jmx.bridgeJMXBridge.main(JMXBridge.java:19) 
Caused by: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
    java.net.ConnectException: Connection refused: connect] 
    at com.sun.jndi.rmi.registry.RegistryContext.lookup(Unknown Source) 
    at com.sun.jndi.toolkit.url.GenericURLContext.lookup(Unknown Source) 
    at javax.naming.InitialContext.lookup(Unknown Source) 
    at javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(Unknown Source) 
    at javax.management.remote.rmi.RMIConnector.findRMIServer(Unknown Source) 
    ... 4 more 
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
    java.net.ConnectException: Connection refused: connect 
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source) 
    at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source) 
    at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source) 
    at sun.rmi.server.UnicastRef.newCall(Unknown Source) 
    at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source) 
    ... 9 more 
Caused by: java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source) 
    at java.net.PlainSocketImpl.connect(Unknown Source) 
    at java.net.SocksSocketImpl.connect(Unknown Source) 
    at java.net.Socket.connect(Unknown Source) 
    at java.net.Socket.connect(Unknown Source) 
    at java.net.Socket.<init>(Unknown Source) 
    at java.net.Socket.<init>(Unknown Source) 
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source) 
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source) 
    ... 14 more 

받고 있어요 발행물.

덕분에, 산

답변

1

당신은

createConnector="true" 

을 설정해야합니다 그리고 당신은 그렇게 할 때, 낙타는 자바 코드 또는 jconsole의에서 사용할 수있는 서비스 URL을 연결하는 정보의 수준에서 기록해야 그것.