針對 BTARN) :問題和解決方式BizTalk Accelerator for RosettaNet (進行疑難排解
本主題說明執行 Microsoft® BizTalk Accelerator for RosettaNet (BTARN) 的相關問題。 每個問題的說明都會詳細描述其特殊徵狀、可能的原因以及解決方式。
發佈 n 個訊息的批次作業時發生錯誤
徵狀
您在事件日誌中收到下列或類似的錯誤:
為傳輸配接器「BizTalk HTTP 接收者」發佈 n 個訊息的批次作業至 MessageBox 資料庫時,傳訊引擎發生錯誤。 如需有關此失敗的詳細資訊,請參考「狀況與活動追蹤」工具,並檢查是否已正確設定結束點繫結。
可能的原因
此錯誤可能是由下列其中一項原因所造成:
遺失解密憑證
未正確加密的訊息
未授權的訊息 (來源無法辨識為有效的夥伴)
訊息的任何標頭部分驗證失敗:前序、傳遞標頭或服務標頭。
此訊息之前可能有另一錯誤訊息,詳細說明原因。
解決方案
請檢閱錯誤訊息所提供的詳細資訊,可取得額外的協助。 重新開機 Microsoft SQL Server ™可解決此問題。
無法取消登錄所有成品
徵狀
執行 BTARNClean 公用程式不會取消列出所有成品。
可能的原因
如果您在從 Microsoft® Management Console 刪除合約和合作夥伴之前執行 BTARNClean 公用程式, (MMC) ,BtarnClean 公用程式將無法取消列出所有成品,因為它們仍會使用。
解決方案
用回送公用程式移除成品
在命令提示字元中,輸入:
lookback.exe /disable <home org or partner>
執行 BtarnClean.exe 檔案。
在 [BizTalk 總管] 中刪除合作對象。
在沒有BizTalk Server的情況下在電腦上安裝 BTARN 會導致遺失檔案
徵狀
執行 ConfigFramework.exe 檔案不會在未安裝 MicrosoftBizTalk Server 或 Microsoft Visual Studio 的電腦上產生任何結果。 您只能使用此 BTARN 設定作為 HTTP 用戶端。
可能的原因
在安裝中遺失兩個 DLL 檔案。
解決方案
在電腦上安裝 SQLXML,然後手動將 Msxml4.dll 與 Atl71.dll 檔案複製到 [System] 資料夾。
要變更 BTARN 組態時收到存取錯誤
徵狀
當您使用 BTARN Management Console 匯入組態檔時,會收到下列錯誤訊息:
無法將「傳送埠」'RNSTT.Async' 的「主要傳輸」之傳輸類型資料存放至組態存放區。 存取遭到拒絕。
當您嘗試變更組態 (例如要建立新的夥伴) 時,也可能會收到這種錯誤。
可能的原因
目前使用者並非「BizTalk 系統管理員」群組中的成員。
解決方案
請確認目前使用者為「BizTalk 系統管理員」群組中的成員。
收到 BAM 錯誤
徵狀
「事件檢視器」中出現以下錯誤訊息:
在追蹤「訊息」活動中發生錯誤。 錯誤訊息為「預存程序不存在」。
-或-
終止具有識別碼< 識別碼 >的 BAM 訊息活動時發生錯誤。
可能的原因
未安裝商務活動監控 (BAM) 追蹤工具。
解決方案
使用 [自訂安裝 ] 選項安裝 BAM 追蹤工具。 如果您不需要 BAM 功能,您可以使用 BTARN 管理主控台忽略這些訊息或停用追蹤。 停用追蹤之後,您必須重新開機 BizTalk Server 和 Internet and Information Services (IIS) 。
您的 XSD 結構描述無法正確顯示在 BizTalk 編輯器中
徵狀
無法用 BizTalk 編輯器正確檢視結構描述的內容。
可能的原因
架構遺漏 displayroot_reference
元素的屬性 schemaInfo
。
解決方案
在 [記事本] 或其他文字編輯器中開啟架構,並將 屬性新增 displayroot_reference
至 schemaInfo
元素。 屬性的值 displayroot_reference
應該與 root_reference
屬性相同。
例如:
<schemaInfo document_type="4A1" version="V02_00" xmlns="<http://schemas.microsoft.com/BizTalk/2003>" displayroot_reference="Pip4A1StrategicForecastNotification" root_reference="Pip4A1StrategicForecastNotification" \>
發出 HTTP 要求卻收到「404 找不到」(404 Not Found) 錯誤
徵狀
當傳送 HTTP 要求時,收到下列或類似的錯誤:
遠端伺服器傳回錯誤:(404) 找不到。
訊息無法傳送至 ../BTSHttpReceive.dll。
可能的原因
BizTalk Server Internet Server API (ISAPI) 延伸模組 DLL (BTSHttpReceive.dll) 尚未在 Internet Information Services (IIS) 中設定。 如果 HwsMessages HttpReceive Web 服務延伸模組未設定,或這個 Web 服務延伸模組已設定但不被允許,就會發生這個問題。
解決方案
請執行下列程序,判斷 HwsMessages HttpReceive Web 服務延伸模組是否已設定為允許 (或尚未設定)。
在 IIS 中設定 BizTalk ISAPI 擴充程式 DLL
按一下 [ 開始] 並指向 [ 系統管理工具],然後按一下 [ Internet Information Services (IIS) 管理員]。
展開 < (本機電腦) 的電腦名稱稱 >,然後按一下 [Web 服務擴充功能]。
在 [ Web 服務延伸模組 ] 窗格中,確認 HwsMessages HttpReceive 的狀態為 [允許]。 如果沒有,請以滑鼠右鍵按一下 [HwsMessages HttpReceive],然後按一下 [ 允許]。
如果 HwsMessages HttpReceive Web 服務延伸模組未設定 (未包含於 IIS 管理員的 Web 服務延伸模組清單中),請執行下列程序。
在 IIS 中設定 BizTalk ISAPI 擴充程式 DLL
按一下 [ 開始] 並指向 [ 系統管理工具],然後按一下 [ Internet Information Services (IIS) 管理員]。
展開 < [電腦名稱稱 > (本機電腦) ],以滑鼠右鍵按一下[Web 服務延伸模組],然後按一下 [新增 Web 服務擴充功能]。
在 [ 新增 Web 服務擴充功能 ] 對話方塊的 [ 擴充功能名稱 ] 方塊中,輸入 BizTalk ISAPI 擴充功能,然後按一下 [ 新增]。
在 [新增檔案] 對話方塊的 [路徑]方塊中,輸入< drive > :\Program Files\Microsoft BizTalk Server version >\HttpReceive\BTSHttpReceive.dll<,然後按一下 [確定]。
在 [ 新增 Web 服務擴充功能 ] 對話方塊中,選取 [ 將擴充功能狀態設定為允許],然後按一下 [ 確定]。
執行組態精靈時發生違規存取
徵狀
您在事件日誌中收到下列或類似的錯誤:
設定成使用者帳戶 \HostSvc 身分的 BizTalk 外掛式主控件執行個體並未執行,或不在這台電腦上。 請用 BizTalk 管理主控台建立一個新的外掛式主控件,或將已經設定好的外掛式主控件重新設定成以 \hostsvc 身分執行。
可能的原因
若要執行設定精靈,使用者應該設定為 ' <machine name> \hostsvc',而不是 '\hostsvc'。
解決方案
開啟 BizTalk 管理主控台,並變更在帳戶 '\hostsvc' 下執行的主機,使其在帳戶 ' <machine name> \hostsvc' 下執行。
匯入編譯 RosettaNet 下一代 PIP 結構描述時收到錯誤
徵狀
您在事件日誌中收到下列或類似的錯誤:
錯誤 CS0234:類別或命名空間 'RosettaNet.Schemas.System' 中不存在類型或命名空間名稱 'SerializableAttribute', (遺漏元件參考?) 。
可能的原因
例如,StandardDocumentHeader.xsd 的其中一個架構具有 RosettaNet.Schemas.System 的 .NET 命名空間。
解決方案
從架構的 .NET 命名空間中移除 「System」,讓命名空間為 RosettaNet.Schemas。
嘗試手動部署 BAM 封裝時收到錯誤
徵狀
當您手動嘗試部署 BTARN 的 BAM 套件時,您會收到錯誤,指出您無法部署套件。
可能的原因
您的系統上已安裝了 BAM_DM_Process 和 BAM_DM_Message 這兩個 DTS 封裝,導致您無法部署 BAM 封裝。
解決方案
修正此錯誤狀況並部署 BAM 封裝
按一下[開始],指向[所有程式],指向[Microsoft SQL Server],然後按一下 [企業管理員]。
在 Enterprise Manager 中,展開[Microsoft SQL Server]、[SQL Server群組]、 ([本機) (Windows NT) ] 和 [資料轉換服務]。
按一下 [ 本機套件],以滑鼠右鍵按一下 [BAM_DM_Message],然後按一下 [ 刪除]。
以滑鼠右鍵按一下 [BAM_DM_Process],然後按一下 [ 刪除]。
依序按一下 [開始] 和 [執行]、輸入 cmd,然後按一下 [確定]。
在命令提示字元中,輸入下列程式碼以部署追蹤檔案,然後按一下 [ 確定]。
cd %ProgramFiles%\Microsoft BizTalk Server <version>\Tracking bm deploy all "%ProgramFiles%\Microsoft BizTalk <version> Accelerator for RosettaNet\BAMTracking\tracking.xml"
新增 PIP 時收到錯誤
徵狀
您在事件日誌中收到下列或類似的錯誤:
UNP.SCON.VALERR:驗證服務內容時發生錯誤。
詳細資料:依據訊息類型尋找文件規格失敗。 請確認已正確部署結構描述。
可能的原因
Pip4A5NotifyofForecastReply 執行個體已部署的結構描述中,文件命名空間或根節點屬性不正確。
解決方案
請檢查 Pip4A5NotifyofForecastReply 執行個體已部署結構描述的文件命名空間與根節點屬性是否正確。
安裝過程中設定 BTARN 組態時發生錯誤,系統推測原因可能是網路連線問題
徵狀
在設定組態的過程中收到錯誤對話方塊,指出電腦並未正確連上網路,但事實上電腦已正確連上網路了。
可能的原因
此錯誤可能是因為 BTARN 設定程式錯誤解譯 IP 位址所造成。 C:\Windows\system32\drivers\etc 中的 Hosts 檔案內含有一個項目,會將 localhost 主機名稱對應成 IP 位址 127.0.0.1。 此組態程式可能把這個值和回送位址混淆了,所以才認為電腦並未正確連上網路。
解決方案
避免此種錯誤並完成組態程序
在 Windows 檔案總管中,移至 C:\Windows\system32\drivers\etc,並使用 [記事本] 開啟主機檔案。
將 「#」 放在行開頭,以批註化 「127.0.0.1 localhost」 行。 將變更後的 Hosts 檔案存檔。
按一下錯誤對話方塊中的 [重試 ]。
等組態設定成功完成後,再用「記事本」開啟 Hosts 檔案,把對應 localhost 那一行開頭的註解標記刪除,然後再將 Hosts 檔案存檔。
收到簽章長度不正確的錯誤
徵狀
您在事件日誌中收到下列或類似的錯誤:
執行接收管線失敗: "Microsoft.Solutions.BTARN.Pipelines.Receive" 來源: "MIME/SMIME decoder" 接收位置: "/BTARNHttpReceive/BTSHTTPReceive.dll?xRNResponseType=async" 原因: 簽章長度不正確,值 = 1935897193。
可能的原因
此錯誤訊息表示簽章的長度不正確。 除了以上的原因之外,標頭內容長度不正確或不完整,導致讀取的簽章長度位元組數不正確,也可能是造成此錯誤的原因。
解決方案
檢查簽章長度與標頭內容長度是否正確。
您會從 64 位元電腦上的 Internet Explorer 收到「503:服務無法使用」
徵狀
BTARN 設定完成之後,當您嘗試存取 http://localhost
或 http://localhost/BtarnApp/RnifSend.aspx
時,可能會收到下列或類似的錯誤:
503:服務無法使用
可能的原因
此錯誤可能是由於 IIS 網站設定 C:\windows\system32\rpcproxy\rpcproxy.dll 底下的 ISAPI 篩選常式所造成的。
解決方案
移除 IIS 中的 RpcProxy 篩選常式項目
按一下 [ 開始] 並指向 [ 系統管理工具],然後按一下 [ Internet Information Services (IIS) 管理員]。
展開< (本機電腦) 的電腦名稱稱 >,以滑鼠右鍵按一下[網站],然後按一下 [內容]。
選取 [ISAPI 篩選準則] 索引標籤。
選取 [RpcProxy 篩選],然後按一下 [ 移除]。
按一下 [確定]。
依序按一下 [開始] 和 [執行]、輸入 cmd,然後按一下 [確定]。
在命令提示字元下,輸入下列程式碼以重設 IIS。
iisreset
注意
如果您在執行上述步驟之後嘗試存取或 http://localhost/BtarnApp/RnifSend.aspx 再次存取 http://localhost ,您會收到來自 Internet Explorer 的 HTTP 400 訊息,這表示 IIS 現在正常運作。
如果沒有輸入專案的組件金鑰檔,HubScenario 範例就不會正確安裝
徵狀
當您在 drive:\Program Files\Microsoft BizTalk < version > Accelerator for RosettaNet\SDK\HubScenario 中< 執行 setup.bat 以設定 HubScenario 範例時,作業會失敗。 >
可能的原因
HubScenario 和 HubHelper 組件未正確部署,因為未在專案中設定組件金鑰檔。
解決方案
對 HubScenario 和 HubHelper 專案設定組件金鑰檔。 如需詳細資訊,請參閱 HubScenario 範例。
執行 setupx64.bat 以在 SQL Server 2008 R2/2008 SP1 上設定雙動作 PIPAutomation 協調流程範例
徵狀
執行 setup.bat 以建置和初始化設定「雙向動作 PIPAutomation 協調流程」範例時,BTARNData 資料庫中的 PipAutomationGetAction 預存程序未建立。
可能的原因
您在 64 位電腦上或在 SQL Server 2008 R2/2008 SP1 上執行的BizTalk Server安裝上執行 setup.bat。 這兩個執行個體都需要您執行 setupx64.bat。
解決方案
請執行 setupx64.bat 以建立預存程序。 如需詳細資訊,請參閱 雙重動作 PIPAutomation 協調流程。
在 Windows Server 2008、64 位 Windows 作業系統 (作業系統上啟用 32 位的 BTARN 應用程式集區)
在 Windows Server 2008、64 位元的 Windows 作業系統 (OS)、Internet Information Services Manager 7.5/7.0 上執行 BTARN 端對端實例。
啟用 32 位元的 BTARN 應用程式集區。
新增 *.dll 參考 IsapiModule 篩選的 HTTP 處理常式。