Ошибка WSE012 (отсутствует действие) при использовании веб-службы WSE

Для небольшого проекта мне нужно использовать (использовать) внешний (безопасный) веб-сервис. Этот веб-сервис использует протокол SOAP1.2 с расширением WSE (имя пользователя + пароль).

Я использую VB (VS2008) и добавил ссылку на службу, настроил app.config для использования wsHttpBinding, а не basicHttpBinding.

Одна из общедоступных функций веб-сервиса называется

searchByName(String, String)As System.Xml.XmlElement

В коде я сначала инициализирую безопасность;

wsTST.ClientCredentials.UserName.UserName = "mycompanyname"
wsTST.ClientCredentials.UserName.Password = "abc%2011!"

а затем вызовите функцию (код здесь не работает):

Debug.WriteLine(wsTST.searchByName("John", "Johnson"))

В mscorlib.dll возникло первое случайное исключение типа «System.ServiceModel.FaultException».

Сообщение об ошибке: WSE012: введено недопустимое сообщение SOAP, поскольку отсутствует следующая информация: действие.

Может ли кто-нибудь сказать мне, возможно ли использование веб-сервиса WSE из VB.NET2008? И может ли кто-нибудь указать мне в правильном направлении?

Я искал в течение нескольких часов, но не мог найти никакой соответствующей информации.

С уважением, Фрэнк


person Frank    schedule 27.09.2011    source источник
comment
Вам не нужно было настраивать привязку. Добавить ссылку на службу следовало выбрать wsHttpBinding, предполагая, что служба WSE правильно использует WS-Security. Какая это версия WSE? И я полагаю, вы знаете, что WSE устарел, но это не имеет значения, потому что вы не контролируете сервер?   -  person John Saunders    schedule 27.09.2011
comment
@JohnSaunders, спасибо за ответ! Я не знаю, правильно ли настроен WSE и какая у него версия. Можно ли как-то сказать, проверив WSDL? Все это говорит: этот веб-сервис использует протокол SOAP1.2, поэтому XML через HTTP. Для аутентификации используется WS-расширение SOAP. Это означает, что в заголовке сообщения SOAP должны быть указаны имя пользователя и пароль. Если вы используете фреймворк, который поддерживает SOAP и SOAP-расширения, фреймворк позаботится об этом трафике.   -  person Frank    schedule 28.09.2011