请问您如何通过接受短参数的JMX调用方法?我有返回String的方法并接受'short'基本类型的数量。当我尝试通过JMX调用此方法时,它在异常时失败:
try {
String opSig[] = {"short"};
Object opParams[] = {10};
result = (String) mbeanServer.invoke(new ObjectName("-OMITTED-"), "getQueue", opParams, opSig);
...
代码在异常时失败:
...
javax.management.MBeanException
...
Caused by: java.lang.IllegalArgumentException: argument type mismatch
非常感谢任何帮助,谢谢
答案 0 :(得分:1)
通过将值的数组类型更改为" Short"
来解决try {
String opSig[] = {"short"};
Short opParams[] = {10};
result = (String) mbeanServer.invoke(new ObjectName("-OMITTED-"), "getQueue", opParams, opSig);
或者:
try {
String opSig[] = {"short"};
Object opParams[] = {new Short("10")};
result = (String) mbeanServer.invoke(new ObjectName("-OMITTED-"), "getQueue", opParams, opSig);