从.net消费SAP web服务抛出异常ServiceModel.FaultException

本文关键字:抛出异常 ServiceModel FaultException 服务 web net 消费 SAP | 更新日期: 2023-09-27 18:14:07

我引用WSDL文件并向SAP web服务发出请求,并得到下面的异常

System.ServiceModel。FaultException: Server Error Server stack trace: at System.ServiceModel.Channels.ServiceChannel. Error。HandleReply(ProxyOperationRuntime操作,ProxyRpc&rpc)

在System.ServiceModel.Channels.ServiceChannel

。Call(String action, Boolean单向,ProxyOperationRuntime操作,Object[] in, Object[] outs, TimeSpan timeout)

在System.ServiceModel.Channels.ServiceChannelProxy

。在System.ServiceModel.Channels.ServiceChannelProxy. inokeservice (IMethodCallMessage methodCall, ProxyOperationRuntime操作)调用(IMessage message) Exception rethrown at [0]:

在System.Runtime.Remoting.Proxies.RealProxy

。HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke (MessageData&msgData, Int32类型)

我可以通过WSDL从SOAPUI使用web服务。

我还设置了以下绑定属性:

 var binding = new BasicHttpsBinding
        {
            SendTimeout = TimeSpan.MaxValue,
            MaxReceivedMessageSize = Int32.MaxValue,
            CloseTimeout = TimeSpan.MaxValue,
            OpenTimeout = TimeSpan.MaxValue,
            ReceiveTimeout = TimeSpan.MaxValue,
            MaxBufferPoolSize = Int64.MaxValue
            
        };

我跟踪来自fiddler的visual studio请求,并且可以从SoapUI执行相同的请求,但是当试图通过visual studio消费时,发生了异常。

从.net消费SAP web服务抛出异常ServiceModel.FaultException

我实际上从头开始解决了这个问题。

响应超过8mb,请求耗时超过100秒。

我在配置文件中做了以下更改,问题解决了。

    <binding receiveTimeout="00:20:00" sendTimeout="00:20:00"
openTimeout="00:05:00"  closeTimeout="00:05:00"
maxReceivedMessageSize="20000000"  maxBufferSize="20000000" maxBufferPoolSize="20000000" >
<readerQuotas maxDepth="20000000"
                            maxStringContentLength="20000000"
                            maxArrayLength="20000000"
                            maxBytesPerRead="20000000"
                            maxNameTableCharCount="20000000" />
   ....