评论由:nickmbailey制作
因此,一种设置jmx连接套接字超时的方法是通过覆盖默认的rmi套接字工厂。请参阅
http://stackoverflow.com/a/1822760/940653
该解决方案并不完美。首先,它覆盖了任何rmi操作默认的工厂,而不仅仅是jmx。它也仅在jmx实际回退到默认工厂时才会有效。例如,如果您启用SSL上的jmx,则不会使用默认的工厂,该解决方案将不会工作。不过,您可以不告诉jmx使用SSL,而是覆盖默认套接字工厂以返回SSL套接字。然而,这将在此时对于rmi操作也是适用的。
您提到的帖子中的解决方案很有趣。我有点认为在jmx库中添加自定义线程工厂和执行器服务有点过重。我可能更愿意在readme/wiki的文档中添加一些文档说明问题以及上述可能的解决方案,这样用户就可以找到它们。
对这个方法有什么看法吗?