2011-02-22 2 views
1

RHEL 5 및 Oracle JDK 1.6_24에서 Tomcat 6을 실행하고 있는데 문제가 있습니다. jconsole을 통해 원격으로 jmx 서비스에 로그인하십시오. | 여기 jconsloe를 통한 Tomcat JMX Services 로그인 문제 : javax.management.remote.rmi.RMIConnector.connect (RMIConnector.java:281)

JAVA_OPTS="-Xms512m -Xmx1152m -XX:MaxPermSize=512m" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9888" 
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" 
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=192.168.XX.XX" 
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.logCalls=true" 

는 '추신 -elf의 출력입니다 : 여기

내 setenv.sh입니다 그렙 바람둥이 '(NETSTAT를 사용할 때 나는 또한 9888 포트 듣기 참조)

0 S root  2930  1 1 85 0 - 500084 184466 20:47 ?  00:00:15 /usr/java/default/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Xms512m -Xmx1152m -XX:MaxPermSize=512m 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Dbuild.compiler.emacs=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9888 -Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.XX.XX -Djava.rmi.server.logCalls=true -Djava.endorsed.dirs=/usr/local/tomcat/endorsed 
-classpath /usr/local/tomcat/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start 

을 그럼 난 다음 명령을 실행하고 jconsole를 통해 연결을 시도 할 때 :

jconsole의 -debug 192.168.XX.XX를 :

java.lang.NullPointerException 
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:281) 
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:228) 
at sun.tools.jconsole.ProxyClient.tryConnect(ProxyClient.java:334) 
at sun.tools.jconsole.ProxyClient.connect(ProxyClient.java:296) 
at sun.tools.jconsole.VMPanel$2.run(VMPanel.java:281) 

나는이 디버깅하고 답변을 찾을 수 없습니다에 대한 아이디어가 부족했다 : 9888

그것은 다음과 같은 오류가 발생합니다. 어떤 생각이나 아이디어?

두 번째 문제는 tomcat을 종료해도 jmx 프로세스가 중지되지 않으며 계속 9888에서 수신 중이기 때문에 tomcat을 다시 시작할 수 없습니다. 종료 중에 JMX 프로세스를 중지하기 위해 아무것도 지정해야합니까?

덕분에 모든

  • 더스틴 체스터 내가 내 서버에 구성된 iptables에 있었다 이런 종류의 오류가 있었다

답변

0

. 이 포트에서 들어오는 트래핑을 차단했습니다. 제 설정에서 Tomcat은 항상 2 개의 무작위 JMX 포트를 열었습니다.

설정 파일을 찾으려고합니다.

K-전차

2

방금 ​​같은 문제가있었습니다. 수정 사항으로 인해 내/etc/hosts 파일의 127.0.0.1 행에서 호스트 이름이 제거되었습니다. JMX가 데이터 연결을 만들 때 localhost에 바인딩하는 원인이되었습니다.