2010-12-02 50 views
4

我有一些應用程序通過Tibco集合點相互通信。這些應用程序使用認證消息進行通信我的問題是,我的兩個接收器最近開始展示他們將得到錯誤27,當他們想要確認一條消息時不允許的行爲(在認證的消息交換中的第一條消息沒有被認證,我們已經考慮了那)。爲什麼我不允許使用Tibco Rendezvous來確認消息的任何原因?

我一直在四處尋找互聯網來找到具有相同錯誤的人,我發現有很多,但試圖創建TIBCO運輸時,他們都得到了錯誤。我可以創建交通工具,但我無法確認收到的任何消息。

我們的環境,同時使用TIBCO和7.X,有時混雜。當同行使用相同的tibco版本和使用不同版本時,都會出現此問題。它不會顯示所有應用程序,但是當它顯示爲應用程序時,它仍然「斷開」。放棄發件人和收件人的分類帳文件不會做任何事情。我們仍然有錯誤。發送者和接收者都有適當的權限來寫入(和創建)分類帳文件。我們正在連接到永久運行rvds。發件人和收件人位於不同的機器上。溝通在過去完美無瑕,但在某種程度上,它停止了這樣做。該應用程序是在java中,我們使用tibrvj.jar自動本機庫。

的錯誤是

 
... 
Caused by: TibrvException[error=27,message=Not permitted] 
    at com.tibco.tibrv.TibrvImplCmTPortC.natConfirmMsg(Native Method) 
    at com.tibco.tibrv.TibrvImplCmTPortC.confirmMsg(TibrvImplCmTPortC.java:304) 
    at com.tibco.tibrv.TibrvCmListener.confirmMsg(TibrvCmListener.java:88) 
.... 

我知道你要問我,「你做了什麼,使之開始發生」,我的回答是「我不知道」。

任何輸入,將不勝感激。

謝謝。

回答

1

事實證明,這是在應用程序級別上的一個錯誤。 由於一些舊代碼在更新依賴關係(我們的消息傳遞層)後,已經從應用程序級別確認轉移到容器級別確認,但我們忘記了在應用程序代碼中刪除顯式的消息確認。

總結:我們試圖確認消息兩次,第二次把它扔到了這個異常。

1

兩個RVD服務器之間的TCP連接可能是不可能的。你能檢查你是否可以從一個連接到另一個(從用戶主機連接到發佈者)?根據我的經驗,CM確認是通過TCP處理的(請考慮一下,因爲我比中間件支持人員更多是最終用戶)。

1

我最近遇到了同樣的例外 - 申請已經工作了幾個月,突然被拋出異常。在我的情況下,在應用程序運行的Windows服務器上進行了一些維護,並且目錄已標記爲只讀。一旦清除,異常就消失了。

排除故障後的小時值得其他潛在原因。

0

只是我的兩分錢:當您嘗試明確確認非CM傳輸的消息時,也會發生此異常。

相關問題