GUJ
Notícias, artigos e o maior fórum brasileiro sobre Java
home
fórum
notícias
tópicos recentes
empregos
artigos
Bem-vindo ao GUJ.
Crie seu login
, ou digite-o para logar no site.
Usuário:
Senha:
[RESOLVIDO]JMS + JBOSS 4.2.2GA - javax.naming.NameNotFoundException: XAConnectionFactory not bound
Índice dos Fóruns
»
Java Enterprise Edition (Java EE)
Autor
Mensagem
08/07/2009 08:05:54
Assunto:
[RESOLVIDO]JMS + JBOSS 4.2.2GA - javax.naming.NameNotFoundException: XAConnectionFactory not bound
Sefo
JavaChild
Membro desde: 18/08/2006 10:02:28
Mensagens: 102
Offline
Estou estudando JMS e me deparei com a seguinte exceção:
javax.naming.NameNotFoundException: XAConnectionFactory not bound at org.jnp.server.NamingServer.getBinding(NamingServer.java:529) at org.jnp.server.NamingServer.getBinding(NamingServer.java:537) at org.jnp.server.NamingServer.getObject(NamingServer.java:543) at org.jnp.server.NamingServer.lookup(NamingServer.java:296) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:667) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:627) at javax.naming.InitialContext.lookup(Unknown Source) at br.com.cliente.TesteJMS.teste(TesteJMS.java:39) at br.com.cliente.TesteJMS.main(TesteJMS.java:57)
Meu cliente JMS:
TesteJMS
package br.com.cliente; import javax.ejb.Stateless; import javax.jms.Connection; import javax.jms.JMSException; import javax.jms.MessageConsumer; import javax.jms.MessageProducer; import javax.jms.Queue; import javax.jms.QueueConnectionFactory; import javax.jms.Session; import javax.jms.TextMessage; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import br.com.bean.Kyrostecnologia.ConsumidorBean; public class TesteJMS{ private Context ctx; /*A ConnectionFactory object encapsulates a set of connection configuration parameters that has been defined by an administrator. A client uses it to create a connection with a JMS provider. */ private QueueConnectionFactory cf; /* */ private Connection conn; private Session session; private Queue fila; private MessageProducer messageProducer; private MessageConsumer messageConsumer; private TextMessage msg; private ConsumidorBean consumidorBean; public void teste(){ try { ctx = new InitialContext(); cf = (QueueConnectionFactory) ctx.lookup("java:/XAConnectionFactory"); // EXCEÇÃO LANÇADA AQUI conn = cf.createConnection(); session = conn.createSession(true, 0); fila = (Queue) ctx.lookup("MyQueue"); messageProducer = session.createProducer(fila); msg = session.createTextMessage("Congratulation, it works!"); messageProducer.send(msg); conn.close(); } catch (NamingException e) { e.printStackTrace(); } catch (JMSException e) { e.printStackTrace(); } } public static void main(String args[]){ new TesteJMS().teste(); } }
Jndi.properties
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=localhost:1100
No JBoss:
jms-ds.xml
<!-- The JMS provider loader --> <mbean code="org.jboss.jms.jndi.JMSProviderLoader" name="jboss.mq:service=JMSProviderLoader,name=JMSProvider"> <attribute name="ProviderName">DefaultJMSProvider</attribute> <attribute name="ProviderAdapterClass"> org.jboss.jms.jndi.JNDIProviderAdapter </attribute> <!-- The combined connection factory --> <attribute name="FactoryRef">java:/XAConnectionFactory</attribute> <!-- The queue connection factory --> <attribute name="QueueFactoryRef">java:/XAConnectionFactory</attribute> <!-- The topic factory --> <attribute name="TopicFactoryRef">java:/XAConnectionFactory</attribute> <!-- Uncomment to use HAJNDI to access JMS <attribute name="Properties"> java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=localhost:1100 </attribute> --> </mbean>
Agradeço por qualquer ajuda.
Auf Wiedersehen!!!
This message was edited 2 times. Last update was at 08/07/2009 13:52:49
NY GIANTS!!!!
WAR BIG BLUES!!!!
08/07/2009 13:51:11
Assunto:
Re:JMS + JBOSS 4.2.2GA - javax.naming.NameNotFoundException: XAConnectionFactory not bound
Sefo
JavaChild
Membro desde: 18/08/2006 10:02:28
Mensagens: 102
Offline
RESOLVIDO:
na class TesteJMS:
try { ctx = new InitialContext(); cf = (QueueConnectionFactory) ctx.lookup("XAConnectionFactory"); conn = cf.createConnection(); session = conn.createSession(true, 0); fila = (Queue) ctx.lookup("queue/MyQueue"); messageProducer = session.createProducer(fila); msg = session.createTextMessage("Congratulation, it works!"); messageProducer.send(msg); conn.close(); } catch (NamingException e) { e.printStackTrace(); } catch (JMSException e) { e.printStackTrace(); }
NY GIANTS!!!!
WAR BIG BLUES!!!!
Índice dos Fóruns
»
Java Enterprise Edition (Java EE)
Ir para:
Selecione um Fórum
Notícias
Assuntos gerais (Off-topic)
MundoJ - Artigos, Notícias e Debates
Artigos e Tutoriais
Java Básico
Java Avançado
Ferramentas, Frameworks e Utilitários
Desenvolvimento Web
Interface Gráfica
Google Android e Java Micro Edition (ME)
Certificação Java
Persistência: Hibernate, JPA, JDBC e outros
Java Enterprise Edition (Java EE)
Frameworks e Bibliotecas brasileiros
RIA - Flex, JavaFX e outros
Arquitetura de Sistemas
Metodologias de Desenvolvimento e Testes de Software
JavaScript
Ruby & Ruby on Rails
Outras Linguagens
Powered by
JForum 2.1.8
©
JForum Team