目标
编写Java代码,根据提供的URL, username, password连接到EMS Server,并获取指定名字的Queue的状态信息,比如ConsumerCount、PendingMessageCount等
代码
import com.tibco.tibjms.admin.QueueInfo;
import com.tibco.tibjms.admin.TibjmsAdmin;
import com.tibco.tibjms.admin.TibjmsAdminException;
/**
* Created on 12/17/2015.
*/
public class TestEMSClient {
public static final String user = "xxx";
public static final String password = "xxx";
public static final String url = "xxx";
public static final String queueName = "xxx";
public static void main(String[] args) {
try {
// 连接server获取TibjmsAdmin对象
TibjmsAdmin admin = new TibjmsAdmin(url, user, password);
// 根据queueName获取QueueInfo对象,Queue的所有状态信息都在该对象中获取
QueueInfo queueInfo = admin.getQueue(queueName);
printStatusInfo(queueInfo);
} catch (TibjmsAdminException e) {
e.printStackTrace();
}
}
// 打印QueueInfo对象的一些信息
private static void printStatusInfo(QueueInfo queueInfo) {
System.out.println("Queue name: " + queueInfo.getName());
System.out.println("ConsumerCount:" + queueInfo.getConsumerCount());
System.out.println("PendingMessageCount: " + queueInfo.getPendingMessageCount());
}
}
注意点
运行该代码需要依赖tibcojms相关的jar包:tibcojmsadmin.jar,jms.jar(tibcojmsadmin.jar依赖)
这些jar包可以在tibco ems的安装目录里Lib文件夹下找到
参考:
[TIBCO Enterprise Message Service™
User’s Guide]
[TIBCO Ems Java Api Reference]