任何人都可以建議我編寫一個消息驅動的bean在C#.net中監聽一個MQ並處理相同的代碼。在C#中的消息驅動bean#
0
A
回答
1
XMS與JMS非常相似。這是C#中使用XMS的消息監聽器的「hello,world」示例。請從您的websphere mq安裝中包含參考IBM.XMS.dll。
在我的Windows安裝,32位,這是
c:\Program Files\IBM\WebSphere MQ\bin\IBM.XMS.dll
此示例假設幾個硬編碼的設置,並沒有錯誤處理,但我覺得你的想法。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using IBM.XMS;
namespace XMSTest
{
class MyXmsApp
{
static void Main(string[] args)
{
MyXmsApp app = new MyXmsApp();
app.Setup();
Console.ReadLine();
}
public void Setup()
{
XMSFactoryFactory xff = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);
IConnectionFactory cf = xff.CreateConnectionFactory();
cf.SetStringProperty(XMSC.WMQ_HOST_NAME, "localhost");
cf.SetIntProperty(XMSC.WMQ_PORT, 1414);
cf.SetStringProperty(XMSC.WMQ_CHANNEL, "CLIENT");
cf.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT);
cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, "QM_LOCAL");
cf.SetIntProperty(XMSC.WMQ_BROKER_VERSION, XMSC.WMQ_BROKER_V1);
IConnection conn = cf.CreateConnection();
Console.WriteLine("connection created");
ISession sess = conn.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
IDestination dest = sess.CreateQueue("queue://q");
IMessageConsumer consumer = sess.CreateConsumer(dest);
MessageListener ml = new MessageListener(OnMessage);
consumer.MessageListener = ml;
conn.Start();
Console.WriteLine("Consumer started");
}
private void OnMessage(IMessage msg)
{
ITextMessage textMsg = (ITextMessage)msg;
Console.Write("Got a message: ");
Console.WriteLine(textMsg.Text);
}
}
}
0
MDB將在Java中。我不知道是否有可以處理用C#編寫的MDB的應用程序服務器。
如果您的想法是使用C#應用程序異步接收WebSphere MQ消息,那麼可以使用具有Message偵聽器的XMS .NET。
相關問題
- 1. 注入消息驅動bean
- 2. 將消息從消息驅動Bean發送到會話Bean
- 3. 如何確認消息驅動Bean中的消息
- 4. 帶數據源的消息驅動Bean
- 5. 的Weblogic如何有消息驅動bean
- 6. .net等價於消息驅動的bean
- 7. 消息驅動的bean和數據庫
- 8. 消息驅動bean AVEC的JBoss 6
- 9. 消息驅動Bean和消息的消費秩序
- 10. JBoss消息驅動bean,onMessage不叫
- 11. ActiveMQ消息驅動bean到JSF
- 12. 通過JNDI查找消息驅動Bean
- 13. Toplink和CMT消息驅動bean
- 14. 消息驅動Bean - 連續循環
- 15. 消息驅動Bean初始化命令
- 16. 消息驅動bean與activemq消息消費
- 17. 消費MQ消息:JMS偵聽VS消息驅動Bean
- 18. Glassfish的消息驅動bean消息大小
- 19. 爲什麼我的消息驅動Bean停止處理消息?
- 20. 帶有Java消息的消息驅動Bean隊列關閉
- 21. 使用消息驅動bean從主題獲取消息apache apollo
- 22. 消息驅動Bean可以同步處理JMS消息嗎?
- 23. 如何停止向消息驅動Bean發送消息?
- 24. 在消息驅動Bean(MDB)中產生新的Java線程
- 25. 如何從會話bean將消息發送到消息驅動Bean間接
- 26. 在Jboss中創建了多少消息驅動Bean?
- 27. 在消息驅動Bean中發送郵件
- 28. 如何將無狀態會話Bean注入消息驅動Bean?
- 29. 如何將會話Bean注入消息驅動Bean?
- 30. 消息驅動豆消息
謝謝佩特,它真的幫助,但我有點困惑,它會讀取那些已經放入隊列並等待響應的消息。 – 2012-07-17 11:54:43
我並不真正關注你。它會讀取所有消息。如果有消息的回覆隊列已設置,並且您知道需要以某種方式進行回覆,則必須在「OnMessage」中手動處理,因此您必須創建消息,將消息ID複製到相關ID並將其發送出去。它應該是相當直接的 – 2012-07-18 06:25:43