JBossTools实践系列:标准JMX MBean服务开发入门

来源:百度文库 编辑:神马文学网 时间:2024/04/20 13:32:28
本文转自 Jbossweek
(一) 环境准备
应用服务器:JBoss AS 4.2.2 GA
开发工具:JBossTools 2.0.0 GA
(二) 创建MBean项目
1、 新建一个普通的java项目,名称为Hello
2、 选择“New->Other->JBossTools->MBean Components->MBean stubs”;
3、 在出现“New MBean Wizard”的“New MBean Interface”窗口中输入:
Packagedemo
MBean NameHelloWorld
选择“下一步”继续;
4、 在出现的“New MBean Class”窗口中输入:
Packagedemo
MBean NameHelloWorld
同时选择“create –service.xml file”选项,选择“下一步”继续;
5、 选择“META-INF”目录,将生成的“Hello-service.xml”文件重构为“jboss-service.xml”;
6、 Hello MBean项目的项目结构如下图所示:

(三) 编写MBean服务
这里编写的MBean服务是一个非常简单的输出“Hello”消息的MBean
1、 接口代码如下:

package demo;

public interface HelloMBean {

public void start() throws Exception;

public void stop() throws Exception;

public void setMessage(String message);

public String getMessage();

public void sayHello();

}


2、 实现代码如下

package demo;

public class Hello implements HelloMBean {

private String message = “Hello World”;

public Hello() {

}

public String getMessage() {

return message;

}

public void sayHello() {

System.out.println(message);

}

public void setMessage(String message) {

this.message = message;

}

public void start() throws Exception {

System.out.println(“Hello MBean is starting…”);

}

public void stop() throws Exception {

System.out.println(“Hello MBean is stoping…”);

}

}


3、 修改jboss-service.xml文件如下:

xml version=“1.0″ encoding=“UTF-8″?>

<server>

<mbean code=“demo.Hello” name=“jbossweek.demo:key=Hello”>

<attribute name=“Message”>Hello World!attribute>

mbean>

server>


(四) MBean服务打包
1、 JBossTools中选择“Window->Show View->Other”,在出现的窗口中选择“JBossTools->roject archives”,就会出现“Project archives”视图;
2、 在“Project archives”视图中选择“New Archive->JAR”,在出现的窗口中将“Archieve Name”修改为Hello.sar,同时选择“Exploded archive resulting in a folder (no compression)”;
3、 Project archives”视图中选择刚创建的“Hello.sar”,右键单击在出现的上下文菜单中选择“New Fileset”,在出现的窗口中单击“Workspace…”按钮,在出现的窗口选择“Hello”项目的“bin”目录,在“includes”中输入“demo/”,选择“Finish”将MBean类加入到Hello.sar包。
4、 同理增加“META-INF/”的filesetjboss-service.xml文件加入到Hello.sar包。
最终的“Project archives”视图如下图所示:


最终的Hello.sar包结构如下图所示:

(五) 部署Hello MBean服务
1、 JBossTools中选择“Window->Show View->Other”,在出现的窗口中选择“Server->JBoss Server View”,就会出现JBoss Server视图;
2、 选择配置一个配置好的JBoss Server,右键单击,在出现的上下文菜单中选择“Add or Remove Projects…”,在出现的窗口中将Hello.sar添加到“Configured Projects…”列表中;
(六) 验证
1、 JBossTools中的JBoss Server视图中单击“启动”图标启动JBoss服务器,在启动过程中会出现如下日志:
[STDOUT] Hello MBean is starting…
2、 打开浏览器访问地址:http://localhost:8080/jmx-console,定位jbossweek.demo:key=Hello,单击进入
3、 修改Message属性为“Hello JBossWeek!”,单击“Apply Changes”;再单击sayHello方法就会在JBossTools的控制台中看到如下日志:
INFO [STDOUT] Hello JBossWeek!
4、 JBossTools中的JBoss Server视图中单击“关闭”图标关闭JBoss服务器,在关闭过程中会出现如下日志:
[STDOUT] Hello MBean is stoping…

到此,标准的JMX MBean服务就开发完成了!