从.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消费时,发生了异常。
我实际上从头开始解决了这个问题。
响应超过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" />
....