我正在寻找自定义用于管理 MBean 的代理视图、代理管理和 MBean 视图页面,并且想知道是否有人以前这样做过或知道有什么工具可以帮助实现这一点。
到目前为止,我只是简单地扩展了 HTML 生成类(HTMLAdminPage、HTMLObjectPage 和 HTMLPage),但是事实证明这很困难,因为它们是私有的/受保护的并且不能扩展。
对于 MBean 视图,请尝试 XMBeans(由 XML 文件定义的 MBean)。都添加一个例子。
我们的 SchedulerMBean XML 的摘录:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mbean PUBLIC
"-//JBoss//DTD JBOSS XMBEAN 1.2//EN"
"http://www.jboss.org/j2ee/dtd/jboss_xmbean_1_2.dtd">
<mbean>
<description>Scheduler Management Interface</description>
<class>ourpackage.SchedulerMBean</class>
<operation>
<description><![CDATA[starts the scheduler]]></description>
<name>start</name>
<return-type>void</return-type>
</operation>
<operation>
<description>
<![CDATA[(Re)initialises a scheduler. <br/>
Deletes all jobs and loads the job defintion from the DB.]]>
</description>
<name>initScheduler</name>
<parameter>
<description>The scheduler's name</description>
<name>Scheduler</name>
<type>java.lang.String</type>
</parameter>
<return-type>void</return-type>
</operation>
</mbean>
还有我们的 SchedulerMBean:
@Service ( objectName = "OurApp:SchedulerMBean=SchedulerMBean",
xmbean="resource:path/to/SchedulerMBean.xml")
public class SchedulerMBean {
public void start() { ... }
public void initScheduler(String schedulerName) { ... }
}