-1

1 つのローカル キューからメッセージを取得しようとしています。メッセージをフェッチすることになっているローカル キューであるキュー マネージャを初期化しました。

ローカル キューに使用されるオープン入力オプション

int openInputOptions = MQC.MQOO_OUTPUT ;               
 MQQueue outputQueue=queueManager.accessQueue(remoteQueue, openInputOptions);

メッセージオプションの取得は

MQGetMessageOptions gmo=new MQGetMessageOptions();
gmo.options=MQC.MQGMO_WAIT | MQC.MQGMO_BROWSE_FIRST;
gmo.matchOptions=MQC.MQMO_NONE;

これを実行すると、

com.ibm.mq.MQException: 完了コード 2、理由 2036 エラー。

MQRC_NOT_OPEN_FOR_BROWSEの状態

そこで、以下のオープンオプションを使用しようとしましたが、

int openInputOptions = MQC.MQOO_OUTPUT | MQC.MQOO_BROWSE;

これを試してみると、エラー コード Completion code 2, Reason 2046 error が表示されます。

4

1 に答える 1

0

キューは実際にはキュー マネージャーに対してローカルですか、それとも「リモート キュー」を開こうとしていますか。それが「ローカル キュー」である場合、「MQC.MQOO_BROWSE」オプションが機能するためです。

于 2016-06-14T18:48:36.690 に答える