在轮询连接到 SFTP 站点时,我在带有 SFTP 接收端口的 BizTalk 2016 实例上收到以下错误:
消息引擎无法将 URL 为“sftp://oursourceserver:22/Live/Pickup/Exports/ . ”的接收位置“OURPORTNAME”添加到适配器“SFTP”。原因:“WinSCP.SessionLocalException:解析会话日志文件时出错 ---> System.Xml.XmlException:缺少根元素。在 System.Xml.XmlTextReaderImpl.Throw(Exception e) at System.Xml.XmlTextReaderImpl.ParseDocumentContent() System.Xml.XmlTextReaderImpl.Read() 在 WinSCP.SessionLogReader.DoRead()
查看 WinSCP 站点,似乎与此 BizTalk 版本绑定的 WinSCP 版本可能会出现此错误。
BT2016自带的WinSCP版本为:
文件版本:1.5.4.8265 产品版本:5.13.1.0
我尝试将 WinSCP 程序集和 EXE 的新版本 5.13.6 (1.5.6.9061) 复制到 BizTalk 安装文件夹中,并使用以下说明更新 Biztalk 32 和 64 位配置文件 (BTSNTSvc.exe.config) 以重定向到此新版本的 WinSCP:
Microsoft BizTalk SFTP 适配器
(参见“使用更新的 WinSCP 版本”)
因此,在 64 位和 32 位配置中,我都有:
<bindingRedirect oldVersion="1.5.4.8265" newVersion="1.5.6.9061" />
编辑它并重新启动主机实例后,我从事件日志中的 SFTP 端口得到这个:
消息引擎无法将 URL 为“sftp://oursourceserver:22/Live/Pickup/Exports/ . ”的接收位置“OURPORTNAME”添加到适配器“SFTP”。原因:“WinSCP.SessionRemoteException:网络错误:软件导致 WinSCP.SessionLogReader.Read(LogReadFlags flags) at WinSCP.ElementLogReader.Read(LogReadFlags flags) at
关于可能导致这种情况的任何想法?