Используйте Java для доступа к службе WCF с TransportWithMessageCredentials (UserName)

Я разработал службу WCF, которая использует BasicHttpBinding с TransportWithMessageCredentials и настраиваемой проверкой имени пользователя и пароля. У меня есть клиент, которому нужно взаимодействовать с моей службой, но клиент использует Java. Не будучи программистом на Java, я мало чем могу ему помочь. Поэтому я подумал, что могу задать вопрос сообществу SO. Не могли бы вы, ребята, пролить свет?


person Dylan Vester    schedule 18.11.2010    source источник


Ответы (2)


Я думаю, это не должно быть сложно. Для BasicHttpBinding TransportWithMessageCredentials означает, что он защищен HTTPS (поэтому вызов службы через HTTPS, а не HTTP) и аутентификацией, которая просто добавляется в заголовки SOAP. Чтобы получить образец, вы можете отключить безопасность транспорта (переключиться на HTTP), захватить фактические данные, переданные с помощью сниффера (например, WireShark), и заставить приложение Java отправлять данные в этой форме.

person Andrey    schedule 18.11.2010
comment
Разве в Java нет инструментов генерации прокси, которые могут создавать классы, правильно конструирующие сообщение? Похоже на WSDL.exe в мире .NET? - person Dylan Vester; 18.11.2010

Попробуйте использовать библиотеку Java Axis для взаимодействия со службой WCF.

Я думаю, что у Axis есть возможность генерировать код взаимодействия со службой Java на основе на WSDL (WSDL2Java).

person Mike Clark    schedule 18.11.2010
comment
Как бы вы передали учетные данные службе с помощью классов Axis? - person Dylan Vester; 18.11.2010