maikonaraujo:
O problema é que eu instalei somente o componente jms, e asism o jboss não roda como container web (não pega servlet), desta forma eu não consigo acessar a aplicação jmx-console. Existe algum outro meio para que eu a acesse?
Ok, agora entendi o q. vc. disse sobre “somente mesmo” …
Neste caso, vc. precisa usar a API do JMX para acessar os demais componentes OU usar um console JMX externo como o MC4J. Só não lembro agora é se ele é capaz de ir direto no conector RMI ou precisa do adaptador http…
Uma solução é usar um servidor http especializado implementado como um MBean (consulte alternativas disponíveis em http://www.java-source.net/open-source/web-servers).
Para acessar a informação no MBean, a seqüência típica de código é:
List servers = MBeanServerFactory.findMBeanServer(null);
if ( servers == null ) {
throw new Exception("Nenhum MBeanServer localizado.");
}
ObjectName mbean = ObjectName.getInstance("dominio:nome=xyz");
for ( int i = 0 ; i< servers.size() ; i++ ) {
MBeanServer s = (MBeanServer)servers.get(i);
if ( s.isRegistered(mbean)) {
return s;
}
}
Note que se seu MBean implementar a interface MBeanRegistration, o método preRegister passará o MBeanServer em uso, evitando a ginástica de encontrar a referência para o mesmo.
Uma vez de posse da referência do MBeanServer que contem o MBean que vc. quer acessar, use os métodos invoke() e get/set attributes para manipulá-lo.