問題タブ [netmsmqbinding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
554 参照

wcf - MSMQ メッセージ送信時の名前変換エラーを解決する方法

私は最近、MSMQ を使用してサードパーティ キューイング システムをセットアップする方法に関するこの記事に従っています。パブリッシャー、キュー サーバー、およびサブスクライバーはすべて、Active Directory ドメイン内の個別のシステム上にあります。パート 1 とパート 2 の前半を完了することに成功しました。ただし、パート 2 の後半に進み、トランスポート セキュリティを有効にすると、次のエラーが表示されます。An error occurred when converting the 'mymsmqservermachine.mydomain.network.ads\private$\Path/To/MyQueuedService.svc' queue path name to the format name: Unrecognized error -1072824300 (0xc00e0014). All operations on the queued channel failed. Ensure that the queue address is valid. MSMQ must be installed with Active Directory integration enabled and access to it is available.

次のことを確認しました。

  1. MSMQ の Active Directory 統合は、この StackOverflow の投稿に従って、サードパーティ システムのすべてのマシンで有効になっています。
  2. キューへの URL は、セキュリティを有効にする前とまったく同じままです。これは問題なく機能し、解析エラーはまったくありませんでした。
  3. ここでMSMQ をインストールするときに、Windows が提供する指示に従いました。

私が取得するスタック トレースの関連部分は次のとおりです。

スタック トレースの内容に基づいて、失敗は Active Directory 内のキュー名の解決に起因しているようです。このような失敗を解決するために、次のことを試しました。

  1. ピリオドやスラッシュを含まないように名前を簡略化する (機能しませんでした)
  2. この手順が MSDN の元のチュートリアルから省略された場合に備えて、プライベート キューの代わりにパブリック キューを使用します (そうではなく、機能しませんでした)。

この時点で、私はアイデアがありません。以前にnet.msmqバインディングでWCFを使用しているときにこのエラーが発生し、問題を解決した人はいますか?

編集:同じマシンと同じユーザーから次のテスト コードを実行すると、メッセージをキューに完全に送信できます。