Пароль порта BizTalk SOAP в файле привязки - PullRequest
1 голос
/ 28 ноября 2008

Я унаследовал приложение BizTalk 2006, которое использует несколько портов SOAP для запроса данных от стороннего веб-сервиса. Веб-сервис защищен «базовой» аутентификацией - именем пользователя / паролем. После внесения нескольких улучшений в приложение я развернул его на сервере тестирования интеграции, который имеет доступ к стороннему веб-сервису. Приложению BizTalk не удалось получить данные, и вскоре я понял, что забыл установить имя пользователя / пароль на портах отправки SOAP. Я хотел, чтобы макетное развертывание приложения BizTalk было максимально автоматизированным, потому что я могу не присутствовать при его развертывании на работающем сервере. Я открыл файл привязки, нашел 1-й из проблемных портов отправки SOAP и искал *, который BizTalk использует для замены пароля - за исключением того, что это не так! Похоже, что пароль для портов SOAP установлен на NULL, а не на *, подробнее см. Здесь: http://msdn.microsoft.com/en-us/library/aa547319.aspx

Я продолжил обновлять привязку, но когда я пришел на тестирование, после импорта измененного файла привязки я обнаружил, что у меня та же проблема, что и раньше. Я дважды проверил и могу подтвердить, что правильный пароль теперь присутствует в файле привязки, но, хотя BizTalk не жалуется во время импорта, при запуске приложения я получаю следующее исключение:

Подробности: "ArgumentNullException: ссылка на строку не установлена ​​для экземпляра строки. Имя параметра: s ».

Если я потом вручную изменю пароль через консоль администратора BizTalk, все будет нормально.

У кого-нибудь еще была похожая проблема с привязками для порта SOAP - у кого-нибудь есть решение?

Ответы [ 2 ]

4 голосов
/ 01 декабря 2008

Я был немного похож на это в прошлом. Пароль либо вводится как «****». Хорошо. Я бы не хотел, чтобы все мои секреты экспортировались с файлом привязки. Что вы получаете, когда вы экспортируете привязки, и вы оставляете пароль NULL. Атрибут типа переменной (vt) в элементе XML для пароля имеет значение vt = "1", что совпадает с NULL. Не имеет значения, что вы вводите для пароля. Это может даже вызвать ошибку, которую вы описали. Я бы предложил вам включить копию связывающего XML для просмотра.

0 голосов
/ 29 ноября 2008

Я никогда раньше не сталкивался с этой проблемой - я делаю именно то, что вы пытаетесь сделать, и она прекрасно работает.

Я включил элемент из одной из моих привязок BizTalk, которая работает. Надеюсь, что есть что сравнить с помогает.

<TransportTypeData>
&lt;CustomProps&gt;
&lt;AuthenticationScheme vt="8"&gt;Basic&lt;/AuthenticationScheme&gt;
&lt;AssemblyName vt="8"&gt;WebService.ProxyClass, Version=1.0.0.0, 
Culture=neutral, PublicKeyToken=xyz&lt;/AssemblyName&gt;
&lt;Username vt="8"&gt;soapUser&lt;/Username&gt;
&lt;UseProxy vt="11"&gt;0&lt;/UseProxy&gt;
&lt;UseSoap12 vt="11"&gt;0&lt;/UseSoap12&gt;&lt;UsingOrchestration vt="11"&gt;0&lt;/UsingOrchestration&gt;
&lt;UseSSO vt="11"&gt;0&lt;/UseSSO&gt;
&lt;Password vt="8"&gt;MYPASSWORD&lt;/Password&gt;
&lt;ProxyPort vt="3"&gt;80&lt;/ProxyPort&gt;&lt;AssemblyPath
vt="8"&gt;C:\ProxyClass\bin\Debug\ProxyClass.dll&lt;/AssemblyPath&gt;
&lt;TypeName vt="8"&gt;ProxyClass.Webservice.servicesService&lt;/TypeName&gt;
&lt;MethodName vt="8"&gt;PickupRequest&lt;/MethodName&gt;
&lt;UseHandlerSetting vt="11"&gt;-1&lt;/UseHandlerSetting&gt;
&lt;/CustomProps&gt;
</TransportTypeData>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...