我想发送消息到远程队列?我应该做什么步骤 我找不到任何文件? 任何人都可以帮忙? ?JBoss JMS远程队列?
5
A
回答
6
在$ {JBOSS_CONF} /deploy/messaging/jms-ds.xml中添加另一个“JMSProvider”。我在这个例子中使用的供应商名称 “RemoteJMSProvider”:
<!-- Remote JMS Server-->
<mbean code="org.jboss.jms.jndi.JMSProviderLoader"
name="jboss.mq:service=JMSProviderLoader,name=RemoteJMSProvider,server=your_remote_host">
<attribute name="ProviderName">RemoteJMSProvider</attribute>
<attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute>
<!-- The connection factory -->
<attribute name="FactoryRef">XAConnectionFactory</attribute>
<!-- The queue connection factory -->
<attribute name="QueueFactoryRef">XAConnectionFactory</attribute>
<!-- The topic factory -->
<attribute name="TopicFactoryRef">XAConnectionFactory</attribute>
<!-- Connect to JNDI on the host "the-remote-host-name" port 1099-->
<attribute name="Properties">
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jnp.interfaces
java.naming.provider.url=your_remote_host:1099
</attribute>
接下来,添加一个 “远程连接工厂”:
<tx-connection-factory>
<jndi-name>RemoteJMSConnectionFactory</jndi-name>
<xa-transaction/>
<rar-name>jms-ra.rar</rar-name>
<connection-definition>org.jboss.resource.adapter.jms.JmsConnectionFactory</connection-definition>
<config-property name="SessionDefaultType" type="java.lang.String">javax.jms.Queue</config-property>
<config-property name="JmsProviderAdapterJNDI" type="java.lang.String">java:/RemoteJMSProvider</config-property>
<max-pool-size>20</max-pool-size>
<security-domain-and-application>JmsXARealm</security-domain-and-application>
<depends>jboss.messaging:service=ServerPeer</depends>
现在,任何时候你创建一个连接工厂引用到“RemoteJMSFactory”,您将在远程服务器上查找您引用的任何队列:
ConnectionFactory factory =(ConnectionFactory)JNDIContext.lookup("java:/RemoteJMSConnectionFactory");
queue = (Destination) JNDIContext.lookup("queue/myqueue");
connection = factory.createConnection();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer sender = session.createProducer(queue);
sender.send(jmsMessage);
参见: http://community.jboss.org/wiki/HowDoIConfigureAnMDBToTalkToARemoteQueue
0
查看您的jboss安装的文档/示例。连接到远程队列所需的唯一更改是设置初始上下文以引用远程应用服务器的JNDI端口。
相关问题
- 1. JBoss AS 5.1 JMS队列NoInitialContextException
- 2. 如何在远程JMS-队列写信的JBoss
- 3. 使用JBoss将消息发布到远程JMS队列
- 4. 远程JMS队列的客户端
- 5. 将JBoss 5.1 MDB EJB3连接到远程JMS提供程序队列
- 6. 如何清除Jboss中的JMS队列
- 7. JBoss JMS存储队列文件
- 8. 通过连接池将JMS消息发送到JBoss AS中的远程队列
- 9. 发送JMS消息到远程队列在JBoss AS 5和AS 7
- 10. 远程机器未运行时如何初始化远程JMS队列的ConnectionFactory?
- 11. 我应该怎么做才能连接到远程jms队列?
- 12. JMS队列已满
- 13. Jboss的HornetQ的:排队Vs的JMS队列
- 14. JMS队列和JMS主题
- 15. Glassfish JMS队列与HornetQ:本地存储和远程转发
- 16. GlassFish上的MDB监听远程JMS队列(MQ通过GenericJMSRA)
- 17. 将邮件发送到glassfish的远程JMS队列
- 18. JMS队列弹簧
- 19. jms队列实现
- 20. JBoss消息队列卡住,远程接口和MDB消费者
- 21. 使用HornetQ清空JBOSS 7中的jms队列
- 22. 如何在jboss中为jms队列增加'InProcessMessageCount'的值?
- 23. 如何从JBOSS 4和5连接JMS队列?
- 24. JBOSS 7.1中队列的JMS生产者/消费者最终
- 25. 启动JBoss时延迟队列中的JMS消息
- 26. 如何在Jboss As7中配置Jms队列
- 27. 创建JBoss的连接池的JMS队列
- 28. jms队列vs内存java队列
- 29. 更正用于发送远程JMS消息的ConnectionFactory jboss 7.1.1
- 30. Jboss EAP 6.3 - 收听远程JMS主题(HornetQ)
感谢ü非常 我已经完成它 – 2009-12-16 18:08:53
将这项工作远程主题。我在JBOSS上使用EJB3 MDB来监听IBM MQ上的远程主题。 – 2014-07-28 22:27:58