4

一部のアプリケーションが Tibco ランデブーを介して相互に通信するセットアップがあります。アプリケーションは、認定されたメッセージングを使用して通信します。私の問題は、私の受信者の 2 人が最近、メッセージを確認したいときに Error 27, Not Permitted を受け取るという動作を示し始めたことです (認証されたメッセージ交換の最初のメッセージは認証されていません。それ)。

私は同じエラーを持つ人々を見つけるためにインターネットを見回してきましたが、多くの人を見つけましたが、tibco トランスポートを作成しようとすると、すべてエラーが発生します。トランスポートは問題なく作成できますが、それを介して受信したメッセージを確認できません。

私たちの環境では、tibco 7.X と 8.X の両方を使用しており、場合によっては混在しています。この問題は、ピアが同じ tibco バージョンを使用している場合と、異なるバージョンを使用している場合の両方で発生します。すべてのアプリケーションで表示されるわけではありませんが、アプリケーションで表示される場合は「壊れた」ままです。送信者と受信者の両方の台帳ファイルを破棄しても、何も起こりません。まだエラーが発生します。送信者と受信者の両方に、台帳ファイルへの書き込み (および作成) のための適切なアクセス許可があります。永続的に実行されている rvd に接続しています。送信者と受信者は別のマシン上にあります。コミュニケーションはこれまで問題なく機能していましたが、ある時点で機能しなくなりました。アプリケーションは Java であり、tibrvj.jar 自動ネイティブ ライブラリを使用しています。

エラーは

...
原因: TibrvException[エラー = 27、メッセージ = 許可されていません]
  com.tibco.tibrv.TibrvImplCmTPortC.natConfirmMsg (ネイティブ メソッド) で
  com.tibco.tibrv.TibrvImplCmTPortC.confirmMsg (TibrvImplCmTPortC.java:304) で
  com.tibco.tibrv.TibrvCmListener.confirmMsg (TibrvCmListener.java:88) で
....

「それを実現するために何をしたか」と聞かれると思いますが、私の答えは「わかりません」です。

任意の入力をいただければ幸いです。

ありがとう。

4

4 に答える 4

1

2 つの RVD サーバー間の TCP 接続ができない可能性があります。相互に接続できるか (サブスクライバー ホストからパブリッシャーに接続できるか) 確認できますか? 私の経験では、CM の確認応答は TCP 経由で処理されます (私はミドルウェアのサポート担当者というよりはエンド ユーザーであるため、これについては慎重に考えてください)。

于 2011-01-06T00:19:17.447 に答える
1

私は最近同じ例外に遭遇しました - アプリケーションは何ヶ月も働いていましたが、突然例外を投げていました。私の場合、アプリケーションが実行されている Windows サーバーでいくつかのメンテナンスが行われ、ディレクトリが読み取り専用としてマークされていました。それがクリアされると、例外はなくなりました。

他の潜在的な原因を数時間トラブルシューティングした後、これを発見しました。

于 2011-02-14T23:05:39.557 に答える
1

結局のところ、これはアプリケーション レベルでの失敗でした。いくつかの古いコードが横たわっていたため、依存関係 (メッセージング レイヤー) を更新した後、アプリケーション レベルの確認からコンテナー レベルの確認に移行しましたが、アプリケーション コードの明示的なメッセージ確認を削除するのを忘れていました。

要約すると、メッセージを 2 回確認しようとしましたが、2 回目にこの例外がスローされました。

于 2011-01-06T08:05:42.863 に答える
0

2 セント: この例外は、非 CM トランスポートでメッセージを明示的に確認しようとした場合にも発生します。

于 2013-01-30T15:56:33.287 に答える