我在 BizTalk 中有一个编排,它通过 SAP 的 Web 服务收集数据。
我的过程如下。
我们在接收端口上有一个 SOAP 服务,当我们收到来自 SOAP 的请求时,我们将其转换为 SAP RFC 文件格式并将其发送给 SAP。当我们尝试从 SAP 获得响应时,当响应数据很大时会出现错误。如果响应消息太大,我们的服务会出现超时错误。否则,如果消息大小不大,则没有问题。
我试图在 BizTalk 管理控制台上增加超时持续时间,但仍然失败。无论我做什么,超时时间始终为 1 分钟。
将以下 XML 配置标签添加到 machine.config 文件后,我收到如下图所示的错误。
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config
<configuration>
<system.transactions>
<machineSettings maxTimeout="00:20:00" />
</system.transactions>
</configuration>
下图是 SAP 发送端口
SAP 发送端口详细信息
在详细信息中,您可以看到我的超时持续时间约为 10 小时,但在 SOAP UI 中,我在 1 分钟后收到超时错误。
下图是接收端口
您还可以找到 biztalk 事件查看器错误,如下所示。
A response message sent to adapter "SOAP" on receive port "WebPort_SAP/MusteriFaturaT/ABC_SAP_Fatura_T_FaturaOrch_InvoiceReceivePort" with URI "/SAP/MusteriFaturaT/ABC_SAP_Fatura_T_FaturaOrch_InvoiceReceivePort.asmx" is suspended.
Error details: The original request has timed out. The response arrived after the timeout interval and it cannot be delivered to the client.
并且 SOAPUI 响应屏幕是空白的,如下所示