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

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][досмотренная версия]
(Новая страница: «<span style="color:red;font-size:120%">Статья находится на стадии разработки.</span><br> Версия статьи от {{REVISIO…»)
 
 
(не показаны 33 промежуточные версии 2 участников)
Строка 3: Строка 3:
 
==Введение==  
 
==Введение==  
  
В данном разделе описываются проблемы и способы решения их, которые возникали у наших клиентов при работе в '''MIS''' или его установке. Прежде чем искать решение проблемы, попробуйте ликвидировать проблему с помощью '''MIS Assistant''', который запускается при старте плагина в случае обнаружения какой-либо проблемы.
+
В данном разделе описываются проблемы, которые возникали у наших клиентов при работе в '''MIS''' или его установке и способы их решения. Для просмотра решения нажмите на слово '''развернуть''' рядом с выбранной ошибкой.
 +
==Список технических ошибок и методов их решения==
 +
[[Файл: mb_030.png|left|Предупреждение]] <br />
 +
Прежде чем искать решение проблемы, попробуйте ликвидировать проблему с помощью '''MIS Assistant''', который <br>запускается при старте плагина в случае обнаружения какой-либо проблемы.  
 +
 
 +
 
 +
<br>
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.ProtocolException: Сделана попытка создания канала к службе, не поддерживающей режим .Net Framing. Возможно, идет процесс обнаружения конечных точек HTTP. ---> System.IO.InvalidDataException: Ожидался тип записи "PreambleAck", найден "72".'''
 +
<div class="mw-collapsible-content">
 +
*1) Если введен адрес сервиса в формате ip-адреса '''net.tcp://192.168.1.58:4242/... и т.д.''', то попробуйте ввести название машины ('''Панель управления\Все элементы панели управления\Система''') включая название домена вместо ip-адреса: '''net.tcp://test:4242/... и т.д.''' <br><br>
 +
*2) Если описанный выше способ не разрешил проблему, то смените порт '''net.tcp''' для приложения в IIS на '''9000:*'''
 +
</div></div>
  
==Список технических ошибок и методов их решения==
+
<br>
*<code>System.ServiceModel.ProtocolException: Сделана попытка создания канала к службе, не поддерживающей режим .Net Framing. Возможно, идет процесс обнаружения конечных точек HTTP. ---> System.IO.InvalidDataException: Ожидался тип записи "PreambleAck", найден "72".</code><br><br>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">
 +
'''HTTP status 405: Method Not Allowed'''
 +
<div class="mw-collapsible-content">
 +
*'''Причина'''. Если при загрузке какой либо информации из сервиса внешней системы возникает данная ошибка, скорее всего администраторами для вашей учетной записи был включен принудительный proxy.
 +
</div></div>
  
Если вы ввели адрес сервисов в формате ip-адреса '''net.tcp:// 192.168.1.58:4242/mis/mts/DogovorService.svc/UserName''', то попробуйте ввести название машины компьютера ('''Панель управления\Все элементы панели управления\Система''') с учетом домена если необходимо вместо ip-адреса: '''net.tcp://test:4242/mis/mts/DogovorService.svc/UserName'''
+
<br>
Если описанный выше способ не разрешил проблему, то смените порт '''net.tcp''' для приложения в IIS на '''9000:*'''<br><br><br>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">'''System.ServiceModel.CommunicationException: Диспетчеру Transport Manager не удалось послушать предоставленный URI с помощью службы NetTcpPortSharing''' <div class="mw-collapsible-content">
*<code>HTTP status 405: Method Not Allowed </code><br><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
 +
</div></div>
  
Если при загрузке какой либо информации из сервиса внешней системы возникает данная ошибка, скорее всего администраторами для вашей учетной записи был включен принудительный proxy. <br><br><br>
+
<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">
*<code>System.ServiceModel.CommunicationException: Диспетчеру Transport Manager не удалось послушать предоставленный URI с помощью службы NetTcpPortSharing</code><br><br>
+
*'''Причина'''. Данная ошибка возникает в том случае, если сертификат установленный на компьютере с '''IIS''' не получил прав работать с данными пользователем.
 +
*'''Решение'''. Для решения данной проблемы надо установить сертификат для учетной записи компьютера (нажать Пуск &rarr; Выполнить &rarr; написать mmc &rarr; нажать сочетание клавиш CTRL+M &rarr; Сертификаты)  и дать права сертификату для работы со всеми пользователями, нажав правой кнопкой по установленному сертификату в папке '''Личное''' и выбрав пункт - '''Все задачи''' &rarr; '''Управление закрытыми ключами...''' добавить полные права для типов пользователей - Все или everybody (зависит от языка windows) , после чего скопировать его в папку '''Доверенные лица'''. Если же данный метод не помогает, то проверьте, что компьютер с '''IIS''' знает учетную запись пользователя, на которой стоит '''MIS''', если нет, то установите сертификат и на машину с '''MIS'''
 +
</div></div>
  
Данная ошибка вызвана тем, что на вашем компьютере повреждена служба '''NetTcpPortSharing'''. Для переустановки необходимо, запустить '''cmd''' с правами администратора и выполнить данную команду: '''c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ServiceModelReg.exe -r'''
+
<br>
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">
 +
'''Прослушивание на net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName не выполняла ни одна конечная точка, которая могла бы принять сообщение. Среди прочих причин это могло быть вызвано неправильным адресом или действием SOAP. Подробнее см. в описании InnerException (если имеется).'''
 +
<div class="mw-collapsible-content">
 +
*Удалено приложение в IIS или файла Web.config нет в приложении.
 +
</div></div>
  
 +
<br>
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">
 +
'''Could not connect to net.tcp://test:4242/mis/mts/DictionaryService.svc/UserName. TCP error code 10060.
 +
<div class="mw-collapsible-content">
 +
*'''Причина'''. Данная ошибка возникает, поскольку закрыт порт net.tcp под которым работает приложение.
 +
*'''Решение'''. Вашему системному администратору необходимо открыть порт net.tcp ( в Брандмауэр Windows/фаервол) под которым работают приложения на машине клиента и/или IIS(сервера).
 +
</div></div>
 
[[Category:Megatec_Integration_Service]]
 
[[Category:Megatec_Integration_Service]]

Текущая версия на 16:39, 19 февраля 2015

Статья находится на стадии разработки.
Версия статьи от 19-02-2015.

Введение

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

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

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


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



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

  • 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(сервера).