谁能帮我找出问题所在?
我的com.intel.esg.ecp.cli.Command连接到JMX,找到MXBean com.acme.AcmeManager,它应该调用createObject来创建AcmeObject。
AcmeManager 和 AcmeObject 都设计为 MXBean,我发布了没有问题。
堆栈是否意味着 AcmeObject 不确认 MXBean 标准或 AcmeManager 不确认 MXBean 标准?我是 JMX MXBean 的新手,有人可以指点我一些有用的材料吗?
谢谢
Executing 'createObject' ...
ERROR: Cannot make MXBean proxy for com.acme.AcmeManager: java.io.InvalidObjectException: Do not know how to make a com.acme.Acme from a CompositeData: no method from(CompositeData); no constructor has @ConstructorProperties
annotation; does not have a public no-arg constructor; contains methods other than getters (getStatus)
java.lang.IllegalArgumentException: Cannot make MXBean proxy for com.acme.AcmeManager: java.io.InvalidObjectException: Do not know how to make a com.acme.AcmeObject from a CompositeData: no method from(CompositeData); no
constructor has @ConstructorProperties annotation; does not have a public no-arg constructor; contains methods other than getters (getStatus)
at javax.management.MBeanServerInvocationHandler.findMXBeanProxy(MBeanServerInvocationHandler.java:323)
at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:247)
at $Proxy18.createObject(Unknown Source)
at com.acme.cli.commands.tenant.CreateTenantCommand.implExecute(CreateTenantCommand.java:71)
at com.intel.esg.ecp.cli.Command.execute(Command.java:64)
at com.intel.esg.ecp.cli.CLI.execute(CLI.java:332)
at com.acme.cli.commands.Main.main(Main.java:174)
Caused by: java.io.InvalidObjectException: Do not know how to make a com.acme.AcmeObject from a CompositeData: no method from(CompositeData); no constructor has @ConstructorProperties annotation; does not have a public no-arg
constructor; contains methods other than getters (getStatus)
at com.sun.jmx.mbeanserver.OpenConverter.invalidObjectException(OpenConverter.java:1403)
at com.sun.jmx.mbeanserver.OpenConverter$CompositeConverter.makeCompositeBuilder(OpenConverter.java:891)
at com.sun.jmx.mbeanserver.OpenConverter$CompositeConverter.checkReconstructible(OpenConverter.java:897)
at com.sun.jmx.mbeanserver.OpenConverter$CollectionConverter.checkReconstructible(OpenConverter.java:663)
at com.sun.jmx.mbeanserver.ConvertingMethod.checkCallToOpen(ConvertingMethod.java:94)
at com.sun.jmx.mbeanserver.MXBeanProxy$Visitor.visitAttribute(MXBeanProxy.java:53)
at com.sun.jmx.mbeanserver.MXBeanProxy$Visitor.visitAttribute(MXBeanProxy.java:48)
at com.sun.jmx.mbeanserver.MBeanAnalyzer.visit(MBeanAnalyzer.java:53)
at com.sun.jmx.mbeanserver.MXBeanProxy.<init>(MXBeanProxy.java:45)
at javax.management.MBeanServerInvocationHandler.findMXBeanProxy(MBeanServerInvocationHandler.java:319)
... 6 more
~>