Megatec Integration Service:Часто задаваемые вопросы и технические ошибки — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[досмотренная версия][досмотренная версия]
Строка 8: Строка 8:
 
  Прежде чем искать решение проблемы, попробуйте ликвидировать проблему с помощью '''MIS Assistant''', который <br>запускается при старте плагина в случае обнаружения какой-либо проблемы.  
 
  Прежде чем искать решение проблемы, попробуйте ликвидировать проблему с помощью '''MIS Assistant''', который <br>запускается при старте плагина в случае обнаружения какой-либо проблемы.  
  
 
<br>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''Прослушивание на net.tcp://test/MIS/mis/importservice.svc/Anonymous не выполняла ни одна конечная точка, которая могла бы принять сообщение.'''
 
<div class="mw-collapsible-content">
 
*1) Вы работаете с ПК «Мастер-Тур» через user-авторизацию, но выполнили пункты во время установки/обновления требуемые только для windows авторизации<br><br>
 
</div></div>
 
  
 
<br>
 
<br>
Строка 26: Строка 20:
 
'''HTTP status 405: Method Not Allowed'''
 
'''HTTP status 405: Method Not Allowed'''
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
*Если при загрузке какой либо информации из сервиса внешней системы возникает данная ошибка, скорее всего администраторами для вашей учетной записи был включен принудительный proxy.
+
*'''Причина'''. Если при загрузке какой либо информации из сервиса внешней системы возникает данная ошибка, скорее всего администраторами для вашей учетной записи был включен принудительный proxy.
 
</div></div>
 
</div></div>
  
 
<br>
 
<br>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.CommunicationException: Диспетчеру Transport Manager не удалось послушать предоставленный URI с помощью службы NetTcpPortSharing''' <div class="mw-collapsible-content">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.CommunicationException: Диспетчеру Transport Manager не удалось послушать предоставленный URI с помощью службы NetTcpPortSharing''' <div class="mw-collapsible-content">
*Данная ошибка вызвана тем, что на вашем компьютере повреждена служба '''NetTcpPortSharing'''. Для переустановки необходимо, запустить '''cmd''' с правами администратора и выполнить данную команду: '''c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ServiceModelReg.exe -r''' для х64 <br />
+
*'''Причина'''. Данная ошибка вызвана тем, что на вашем компьютере повреждена служба '''NetTcpPortSharing'''.
 +
*'''Решение'''. Для переустановки необходимо, запустить '''cmd''' с правами администратора и выполнить данную команду: '''c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ServiceModelReg.exe -r''' для х64 <br />
 
'''C:\Windows\Microsoft.NET\Framework\v4.0.30319>ServiceModelReg.exe -r''' для х86
 
'''C:\Windows\Microsoft.NET\Framework\v4.0.30319>ServiceModelReg.exe -r''' для х86
 
</div></div>
 
</div></div>
  
 
<br> <div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.Security.SecurityNegotiationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица". ---> System.IdentityModel.Tokens.SecurityTokenValidationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица".'''<div class="mw-collapsible-content">
 
<br> <div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.Security.SecurityNegotiationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица". ---> System.IdentityModel.Tokens.SecurityTokenValidationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица".'''<div class="mw-collapsible-content">
*Данная ошибка возникает в том случае, если сертификат установленный на компьютере с '''IIS''' не получил прав работать с данными пользователем. Для решения данной проблемы надо установить сертификат для учетной записи компьютера (нажать Пуск &rarr; Выполнить &rarr; написать mmc &rarr; нажать сочетание клавиш CTRL+M &rarr; Сертификаты)  и дать права сертификату для работы со всеми пользователями, нажав правой кнопкой по установленному сертификату в папке '''Личное''' и выбрав пункт - '''Все задачи''' &rarr; '''Управление закрытыми ключами...''' добавить полные права для типов пользователей - Все или everybody (зависит от языка windows) , после чего скопировать его в папку '''Доверенные лица'''. Если же данный метод не помогает, то проверьте, что компьютер с '''IIS''' знает учетную запись пользователя, на которой стоит '''MIS''', если нет, то установите сертификат и на машину с '''MIS'''
+
*'''Причина'''. Данная ошибка возникает в том случае, если сертификат установленный на компьютере с '''IIS''' не получил прав работать с данными пользователем.
 +
*'''Решение'''. Для решения данной проблемы надо установить сертификат для учетной записи компьютера (нажать Пуск &rarr; Выполнить &rarr; написать mmc &rarr; нажать сочетание клавиш CTRL+M &rarr; Сертификаты)  и дать права сертификату для работы со всеми пользователями, нажав правой кнопкой по установленному сертификату в папке '''Личное''' и выбрав пункт - '''Все задачи''' &rarr; '''Управление закрытыми ключами...''' добавить полные права для типов пользователей - Все или everybody (зависит от языка windows) , после чего скопировать его в папку '''Доверенные лица'''. Если же данный метод не помогает, то проверьте, что компьютер с '''IIS''' знает учетную запись пользователя, на которой стоит '''MIS''', если нет, то установите сертификат и на машину с '''MIS'''
 
</div></div>
 
</div></div>
  
Строка 50: Строка 46:
 
'''Could not connect to net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName. TCP error code 10060.
 
'''Could not connect to net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName. TCP error code 10060.
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
*Администратору необходимо открыть порт net.tcp в Брандмауэр Windows под которым работают приложения на машине клиента и IIS.
+
*'''Причина'''. Данная ошибка возникает, поскольку закрыт порт net.tcp под которым работает приложение.
 +
*'''Решение'''. Вашему системному администратору необходимо открыть порт net.tcp ( в Брандмауэр Windows/фаервол) под которым работают приложения на машине клиента и/или IIS(сервера).
 
</div></div>
 
</div></div>
 
 
[[Category:Megatec_Integration_Service]]
 
[[Category:Megatec_Integration_Service]]

Версия 11:55, 11 ноября 2014

Статья находится на стадии разработки.
Версия статьи от 11-11-2014.

Введение

В данном разделе описываются проблемы, которые возникали у наших клиентов при работе в MIS или его установке и способы их решения. Для просмотра решения нажмите на слово развернуть рядом с выбранной ошибкой.

Список технических ошибок и методов их решения

Предупреждение


Прежде чем искать решение проблемы, попробуйте ликвидировать проблему с помощью MIS Assistant, который 
запускается при старте плагина в случае обнаружения какой-либо проблемы.



System.ServiceModel.ProtocolException: Сделана попытка создания канала к службе, не поддерживающей режим .Net Framing. Возможно, идет процесс обнаружения конечных точек HTTP. ---> System.IO.InvalidDataException: Ожидался тип записи "PreambleAck", найден "72".
  • 1) Если вы ввели адрес сервисов в формате ip-адреса net.tcp:// 192.168.1.58:4242/mis/mts/DogovorService.svc/UserName, то попробуйте ввести название машины компьютера (Панель управления\Все элементы панели управления\Система) включая название домена вместо ip-адреса: net.tcp://test:4242/mis/mts/DogovorService.svc/UserName

  • 2) Если описанный выше способ не разрешил проблему, то смените порт net.tcp для приложения в IIS на 9000:*


HTTP status 405: Method Not Allowed

  • Причина. Если при загрузке какой либо информации из сервиса внешней системы возникает данная ошибка, скорее всего администраторами для вашей учетной записи был включен принудительный proxy.


System.ServiceModel.CommunicationException: Диспетчеру Transport Manager не удалось послушать предоставленный URI с помощью службы NetTcpPortSharing
  • Причина. Данная ошибка вызвана тем, что на вашем компьютере повреждена служба NetTcpPortSharing.
  • Решение. Для переустановки необходимо, запустить cmd с правами администратора и выполнить данную команду: c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ServiceModelReg.exe -r для х64

C:\Windows\Microsoft.NET\Framework\v4.0.30319>ServiceModelReg.exe -r для х86


System.ServiceModel.Security.SecurityNegotiationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица". ---> System.IdentityModel.Tokens.SecurityTokenValidationException: Сертификат X.509 CN=WCFServer не принадлежит хранилищу "Доверенные лица".
  • Причина. Данная ошибка возникает в том случае, если сертификат установленный на компьютере с IIS не получил прав работать с данными пользователем.
  • Решение. Для решения данной проблемы надо установить сертификат для учетной записи компьютера (нажать Пуск → Выполнить → написать mmc → нажать сочетание клавиш CTRL+M → Сертификаты) и дать права сертификату для работы со всеми пользователями, нажав правой кнопкой по установленному сертификату в папке Личное и выбрав пункт - Все задачиУправление закрытыми ключами... добавить полные права для типов пользователей - Все или everybody (зависит от языка windows) , после чего скопировать его в папку Доверенные лица. Если же данный метод не помогает, то проверьте, что компьютер с IIS знает учетную запись пользователя, на которой стоит MIS, если нет, то установите сертификат и на машину с MIS


Прослушивание на net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName не выполняла ни одна конечная точка, которая могла бы принять сообщение. Среди прочих причин это могло быть вызвано неправильным адресом или действием SOAP. Подробнее см. в описании InnerException (если имеется).

  • Удалено приложение в IIS или файла Web.config нет в приложении.


Could not connect to net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName. TCP error code 10060.

  • Причина. Данная ошибка возникает, поскольку закрыт порт net.tcp под которым работает приложение.
  • Решение. Вашему системному администратору необходимо открыть порт net.tcp ( в Брандмауэр Windows/фаервол) под которым работают приложения на машине клиента и/или IIS(сервера).