我使用Spring注释成功地公开了一个方法:
@Override
@ManagedOperation(description = "synchronize To Local Directory")
@ManagedOperationParameters({ @ManagedOperationParameter(name = "localDirectory", description = "The Local Directory") }
public void synchronizeToLocalDirectory(File localDirectory) {
super.synchronizeToLocalDirectory(localDirectory);
}
通过成功我的意思是它可以在jConsole中看到。 但是,操作无法调用,显然是因为参数;需要指定localDirectory。
localDirectory的类型为File。
问题是在调用操作时设置localDirectory的按钮/选项不活动。
如果我将类型从File更改为String它可以工作,但我不想这样做 - 我最好希望用户通过文件选择器对话框选择一个目录。
问题: JMX是否适合可以在jConsole之类的操作中指定的操作中的File类型参数?或者它必须设置为复合类型?
由于
答案 0 :(得分:0)
否java.io.File
不是直接支持的JMX类型。正如您正确建议您需要使用复合类型或调整管理界面以接受例如。 String
文件路径的值。