Я пытаюсь вызвать сервис мыла в скриптовой задаче, но получаю следующую ошибку.Я добавил serviceReference через URL-адрес wsdl.Я понятия не имею, о чем говорит эта ошибка.Однако я не могу получить данные в SOAPUI. «Заголовок« ReliableMessaging »из пространства имен» http://sap.com/xi/XI/Message/30' не был понят получателем этого сообщения, из-за чего сообщение не обрабатывается. Эта ошибка обычно указывает на то, чтоотправитель этого сообщения включил протокол связи, который не может обработать получатель. Убедитесь, что конфигурация привязки клиента соответствует привязке службы. "
ниже приведен код, который я использую
EndpointAddress endPointAddress = new EndpointAddress("https://sapnxcci.intel.com:8220/XISOAPAdapter/MessageServlet?senderParty=&senderService=MC4510&receiverParty=&receiverService=&interface=Segments&interfaceNamespace=http://intel.com/xi/Intel-MDM/Project/Segment"); SegmentsClient client = new SegmentsClient(BindingUtility.GetInitiativesBinding(), endPointAddress); client.ClientCredentials.UserName.UserName = "sys_idwcons"; client.ClientCredentials.UserName.Password = "abdc"; SegmentResponse results = client.ListSegments(new SegmentRequest() { SegmentName = "" });
В GetInitiativesBinding содержится следующее.
public static BasicHttpBinding GetInitiativesBinding() { BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.Transport); binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic; binding.MaxReceivedMessageSize = 2147483647; binding.MaxBufferSize = 2147483647; binding.ReceiveTimeout = TimeSpan.FromMinutes(5); binding.SendTimeout = TimeSpan.FromMinutes(5); return binding; }
и мой файл App.Config выглядит следующим образом
<?xml version="1.0" encoding="utf-8" ?> <configuration> <system.serviceModel> <bindings> <basicHttpBinding> <binding name="SegmentsBinding" /> <binding name="SegmentsBinding1"> <security mode="Transport" /> </binding> </basicHttpBinding> </bindings> <client> <endpoint address="http://sapnxcci.intel.com:8420/XISOAPAdapter/MessageServlet?senderParty=&senderService=MC4510&receiverParty=&receiverService=&interface=Segments&interfaceNamespace=http%3A%2F%2Fintel.com%2Fxi%2FIntel-MDM%2FProject%2FSegment" binding="basicHttpBinding" bindingConfiguration="SegmentsBinding" contract="ServiceReference1.Segments" name="HTTP_Port" /> <endpoint address="https://sapnxcci.intel.com:8220/XISOAPAdapter/MessageServlet?senderParty=&senderService=MC4510&receiverParty=&receiverService=&interface=Segments&interfaceNamespace=http%3A%2F%2Fintel.com%2Fxi%2FIntel-MDM%2FProject%2FSegment" binding="basicHttpBinding" bindingConfiguration="SegmentsBinding1" contract="ServiceReference1.Segments" name="HTTPS_Port" /> </client> </system.serviceModel> </configuration>
Я думаю, это потому, что ответное сообщение от PI содержит теги.теги полезны только при наличии соединения PI - PI.
Ссылка: https://archive.sap.com/discussions/thread/1839924