我正在尝试通过 spring 注释注册 mbean。 bean 在 jconsole 中正确显示,但类中定义的属性和方法没有显示。这是怎么回事?
以下是一个 mbean 示例:
@ManagedResource(objectName="com.xormedia.aqua.mbean:name=AuthenticationServer",description="AuthenticationServerSummary")
public class AuthenticationServerSummaryMbean implements MonitorMXBean {
private String ip;
private String port;
@ManagedAttribute
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
@ManagedOperation(description="show port number")
public String getPort() {
return port;
}
public void setPort(String port) {
this.port = port;
}
}
我按照在线指南配置了 spring xml,但只有 mbean,没有任何属性和方法的树结构。
就像这样。
最佳答案
尝试将您的方法更改为以下内容:
添加<context:mbean-export/>
在你的 spring 配置中。
稍微改变一下你的类(class):
@ManagedResource(
objectName = "com.xormedia.aqua.mbean:name=AuthenticationServer",
description = "AuthenticationServerSummary",
log = true,
logFile = "jmx.log",
currencyTimeLimit = 1)
public class AuthenticationServerSummaryMbean {
private String ip;
private String port;
@ManagedAttribute(description = "IP Address", currencyTimeLimit = 1)
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
@ManagedAttribute(description = "Port number", currencyTimeLimit = 1)
public String getPort() {
return port;
}
public void setPort(String port) {
this.port = port;
}
}
注册您的 mBean:
<bean id="mBeanService" class="yourpackage.AuthenticationServerSummaryMbean"/>
关于java - JConsole 没有显示我在 mbean 中定义的 mbean 属性和方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18528301/