2016-05-27 3 views
0

.Netを使用してMQクラスタにメッセージを送信する必要があります。どうすればいいのですか?.Netを使用してMQクラスタにメッセージを送信する方法は?

 MQEnvironment.Hostname = "10.1.1.22"; 
     MQEnvironment.Port = 1455; 
     MQEnvironment.Channel = "SOMECHANNEL"; 
     MQEnvironment.ConnectionName = "10.1.1.22(1432)"; 
     MQQueueManager qm =new MQQueueManager("SOMEQM"); 

      var openOptions = MQC.MQOO_INPUT_AS_Q_DEF| MQC.MQOO_OUTPUT; 
      var queue = qm.AccessQueue("MYREQUESTQUEUE", openOptions); 

現在、これは最後の行では失敗しています。クラスタキューへの接続を開くときにの適切なオプションは何を送信するのですか?点の

答えて

1

カップル:

1)クラスタ・キューがどのアプリケーションが接続されたキュー・マネージャー上でホストされなくてもよいです。

2)メッセージは、アプリケーションが接続されているキュー・マネージャーでホストされていないクラスター・キューに置くことができます。しかし、メッセージGETには、アプリケーションが接続されているキュー・マネージャーにあるキューmustがホストされている必要があります。

アプリケーションはMQC.MQOO_INPUT_AS_Q_DEFオプションを使用しています。つまり、キューからメッセージを取得しようとしていますが、そのキューはアプリケーションが接続されているキューマネージャに存在しません。したがって、例外がスローされています。 MQC.MQOO_INPUT_AS_Q_DEFオプションを削除し、メッセージをクラスタキューに送信/送信するには、MQC.MQOO_OUTPUTを使用する必要があります。

関連する問題