JBoss AS 7.x 的做法略有不同。
这是一篇关于“如何在 JBoss AS7 上创建 SAR”的好文章:
 http ://middlewaremagic.com/jboss/?p=366
您可以使用 来查看 JBoss 和您的 MBean jconsole,例如JBOSS_HOME/bin/jconsole.sh,查看 MBeans 选项卡。我猜你的 jmx-console.war 也可以。
您的 MBean 似乎没有被您的应用程序正确实例化和注册。
注册 MBean 的方法很少,请参阅上面的文章了解一种可能的方法。
这是您可以使用@Singleton、@Startup EJB bean 创建和注册 MBean 的另一种方法: - 使您的 MBean @Singleton、@Startup EJB - 在 @PostConstruct 生命周期方法中注册您的 MBean - 在您的 @PreDestroy 生命周期方法中取消注册 MBean
这是一个跟踪当前用户数、最大用户数、性能等的示例 MBean...
MBean 接口,例如MonitoringResourceMXBean.java:
package examples.mymonitoring;
public interface MonitoringResourceMXBean {
    // current user count
    long getCurrentUsers();
    void countUserUp();
    void countUserDown();
    // maximum user count
    long getMaximumUsers();
    void setMaximumUsers(long max);
    // request count
    long getRequests();
    long countRequest();
    // maximum duration of request
    long getMaximumWait();
    void reportWait(long wait);
}
MBean 实现,例如
package examples.mymonitoring;
import java.lang.management.ManagementFactory;
import java.util.concurrent.atomic.AtomicLong;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.Singleton;
import javax.ejb.Startup;
import javax.management.MBeanServer;
import javax.management.ObjectName;
@Singleton
@Startup
public class MonitoringResource implements MonitoringResourceMXBean {
    private MBeanServer platformMBeanServer;
    private ObjectName objectName = null; 
    private long maximumUsers = 100; 
    private AtomicLong requestCount = new AtomicLong(0);
    private AtomicLong currentUsers = new AtomicLong(0);
    private long maximumWait = 0;
    @PostConstruct
    public void registerInJMX() {
        try {
            objectName = new ObjectName("MyMonitoring:type=" + this.getClass().getName());
            platformMBeanServer = ManagementFactory.getPlatformMBeanServer();
            platformMBeanServer.registerMBean(this, objectName);
        } catch (Exception e) {
            throw new IllegalStateException("Problem during registration of Monitoring into JMX:" + e);
        }
    }
    @PreDestroy
    public void unregisterFromJMX() {
        try {
            platformMBeanServer.unregisterMBean(this.objectName);
        } catch (Exception e) {
            throw new IllegalStateException("Problem during unregistration of Monitoring into JMX:" + e);
        }
    }
    @Override
    public long getCurrentUsers() {
        return this.currentUsers.get();
    }
    @Override
    public void countUserUp() {
        this.currentUsers.incrementAndGet();
    }
    @Override
    public void countUserDown() {
        this.currentUsers.decrementAndGet();
    }
    @Override
    public long getMaximumWait() {
        return this.maximumWait;
    }
    @Override
    public long getMaximumUsers() {
        return this.maximumUsers;
    }
    @Override
    public void setMaximumUsers(long max) {
        this.maximumUsers = max;
    }
    @Override
    public void reportWait(long wait) {
        if ( wait > maximumWait ) maximumWait = wait;
    }
    @Override
    public long getRequests() {
        return this.requestCount.get();
    }
    @Override
    public long countRequest() {
    return this.requestCount.incrementAndGet(); 
    }
}
希望这个例子有帮助。
干杯!