2013-05-23 6 views
0

Я могу зарегистрировать класс в MBean, но не смог подключиться через jconsole. Почему я не смог подключить запуск этого приложения, хотя я отключил проверку подлинности jmx через параметры JVM.Spring с проверкой подлинности JMX

Вот мой классы Java, весна файл свойств и JVM параметры

package com.mkyong.jmx; 

public interface JmxCoreComands { 
    public void start(); 
    public void stop(); 
    public void report(); 
} 


package com.mkyong.jmx; 

import org.springframework.stereotype.Service; 

@Service 
public class JmxService implements JmxCoreComands { 

    @Override 
    public void start() { 
     System.out.println("Jmx Service start"); 
    } 

    @Override 
    public void stop() { 
     System.out.println("jmx service stop"); 
    } 

    @Override 
    public void report() { 
     System.out.println("jmx service report"); 
    } 

} 

Spring свойство XML:

<bean id="jmxAdapter" class="org.springframework.jmx.export.MBeanExporter" lazy-init="false"> 
     <property name="beans"> 
      <map> 
       <entry key="SPRING:Name=TestRun"> 
        <ref bean="jmxService" /> 
       </entry> 
      </map> 
     </property> 
     <!-- managemethods property starts --> 
     <property name="assembler"> 
      <bean 
       class="org.springframework.jmx.export.assembler.InterfaceBasedMBeanInfoAssembler"> 
       <property name="managedInterfaces"> 
        <value>com.mkyong.jmx.JmxCoreComands</value> 
       </property> 
      </bean> 
     </property> 
     <!-- managemethods property ends --> 
    </bean> 

JVM Параметры:

-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8014 
-Dcom.sun.management.jmxremote.authenticate=false 
-Xmx1024M 
-Xdebug 
-Xnoagent 
-Xrunjdwp:transport=dt_socket,address=8454,server=y,suspend=n 
-Djava.compiler=NONE 
+0

Вы не можете подключить JVisualVM к JMXServer вообще или вы не найдете MXBean? - есть ли ошибка/исключение? – Ralph

+0

BTW: Вы bean - это MBean, а не MXBean (Соглашение об именах для MXBeans заключается в том, что имя интерфейса заканчивается на «MXBean»). Но в данный момент это не должно быть проблемой. – Ralph

+0

Я могу использовать порт telnet 8014, но могу не устанавливать соединение через jconsole с пустым именем пользователя и паролем. Я использовал JMX суровое время, поэтому я уверен, что правильно заполняю правильный параметр. Кроме того, на сайте java не существует исключения –

ответ

2

После тя ned моя конфигурация JVM как следующая, я могу подключить приложение к JMX.

-Djava.rmi.server.hostname=127.0.0.1 
-Dcom.sun.management.jmxremote.port=8014 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 
Смежные вопросы