{(44)}: Ошибка при вызове метода контекста (GetAllProperties): При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса: GetAllProperties(): При вызове веб-сервиса произошла ошибка. Ошибка SOAP сервера: Нарушение прав доступа к операции Web-сервиса: GetAllProperties()
Код ошибки: Client
Техническая информация:
<detail xmlns:soap=»http://schemas.xmlsoap.org/soap/envelope/»/>
Почему такое может быть?
Веб-сервис в расширении, права на веб-сервис есть, пользователю, под которым этот веб-сервис выполняется, права назначены. Почему еще может ругаться?
Всем доброе время суток, очень нужна ваша помощь. При тестировании веб-сервиса возникает следующая ошибка: Ошибка при вызове метода контекста (WritePKO) по причине: Ошибка вызова операции сервиса: { по причине: Ошибка SOAP сервера: Нарушение прав доступа к операции Web-сервиса: { имя сервера изменено на nameserver ) Читала на форумах все, что нашла, сломала голову. Роль, под которой вызывается обработка с подключением сервиса, имеет полные права, в т.ч. права на операцию сервиса. При создании сервиса в обработке использую статическую ссылку, сразу заполняю свойства «Пользователь» и «Пароль». В названиях тестовых баз (одна с публикацией сервиса, другая — для вызова) только латинские символы, путь до базы — тоже латиницей, операции и параметры сервиса — тоже латиницей. Версия платформы 8.3.5.1186, конфа обеих баз — Бухгалтерия предприятия (2.0.63.5). Вся инфа только по 8.1 или 8.2, может быть, в 8.3 есть отличия? У кого какие светлые мыли, подсказывайте. ссылки и и уже видела.
А от имени кого в базу логиниться внешнее соединение которое долбится в веб сервис?
На всякий случай текст моей простейшей процедуры
хороший вопрос, в базе несколько пользователей. есть с аутентификацией винды
wsdltest — а этот есть? и у него полные права?
1, сервис был зарегистрирован под пользователем wsdltest, он там есть, права полные
, только что обнаружила, нет, не дали ему прав, забыли. просто анекдот (не проверила, когда его создавали). спасибо тебе.
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
Обмен данными не работает
В пользовательском режиме приложения «1С:Предприятие» откройте настройки обмена с «Первой Формой». Убедитесь, что флажок «Запретить обмен с Первой Формой» не включен. Если флажок включен — отключите его и нажмите кнопку Записать и закрыть.
Запрет обмена с «Первой Формой».
Совпадение событий по времени при синхронизации
Возможна ситуация, когда два события — выполнение синхронизации данных и попытка изменения этих же данных штатными средствами «1С:Предприятие» — совпадают во времени. В этом случае пользователю при сохранении данных будет выдано сообщение о ошибке:
Сообщение об ошибке при совпадении изменений по времени.
Это нормальное поведение системы, поскольку в БД содержится уже другая версия данных. В этом случае форму документы/элемента справочника надо закрыть без сохранения и затем открыть снова.
Для администратора возникновение таких ошибок должно стать сигналом к пересмотру правил настройки бизнес-процесса. Возможно, для таких документов/справочников достаточно одностороннего обмена данных из «1С:Предприятие» в «Первую Форму».
Таймаут при синхронизации
При синхронизации данных между «Первой Формой» и 1С могут возникать ошибки из-за того, что не все данные успевают обработаться в одной системе за то время, пока вторая система ожидает ответа. В частности, таймауты могут возникать при синхронизации виртуальных документов, имеющих табличную часть с 200 и более записей. Таймаут на стороне 1С фиксируется в журнале ошибок.
На стороне «Первой Формы» таймаут ожидания ответа при вызове веб-сервиса 1С составляет 12 часов.
На стороне 1С таймаут можно регулировать. Для этого в «1С:Предприятие» в справочнике «Настройки обмена («Первая форма»)» откройте предопределенный элемент «Общие настройки» и в поле «Таймауты WS» увеличьте значение в поле «Прокси» – укажите, сколько секунд сервер 1С должен ждать ответа от сервера «Первой Формы» до обрыва соединения. Если указать значение 0, то таймаут не ограничен (сервер будет ждать до тех пор, пока операция не будет выполнена).
В поле «Определение» указывается длительность подключения к сервису (в секундах), а в поле «Прокси» – длительность выполняемой операции внутри «Первой Формы» (в секундах).
Настройки таймаута.
Недостаточно прав доступа в 1С
При обмене данными может возникать следующая ошибка:
«Error while calling 1С service. Нарушение прав доступа к операции Web-сервиса:
{www.rg-soft.ru}:rg1СTCService:PerformOperation().»
Причина возникновения ошибки связана с недостатком прав пользователя на стороне приложения «1С:Предприятие». Для исправления необходимо в конфигураторе «1С:Предприятие» проверить роли у пользователя, который указан в «Первой Форме» в настройках для подключения (атрибут OneCUserName в XML-настройках), и убедиться, что хотя бы одна из этих ролей имеет доступ к сервису.
Не выполняются регламентные задания
Если на стороне «1С:Предприятие» задания в очередь ставятся и видны в регистре сведений «Очередь обмена (Первая Форма)», но не выполняются, необходимо убедиться, что регламентное задание по обработке очереди есть в системе, оно включено, и регламентные задания не заблокированы на стороне сервера.
1. Проверка существования регламентного задания.
В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика», в которой находится внешняя обработка «Консоль заданий.epf». Этот файл необходимо открыть в режиме «1С:Предприятие». Появится окно, в котором будут отображены все регламентные задания в системе. Задание модуля синхронизации имеет название «Очередь обмена с Первой Формой».
2. Проверка, что задание включено.
В «Консоли Заданий» можно просмотреть, включена ли обработка и какой период ее выполнения.
3. Проверка блокировки.
На сервере «1С:Предприятие» можно полностью блокировать выполнение всех регламентных заданий (т.е. при блокировке все регламентные задания будут простаивать). Эту блокировку должны снимать специалисты «1С:Предприятие», т.к. нужно учитывать, какие из регламентных заданий уже включены и к каким последствиям это приведет.
4. Поиск и проверка объектов, вызвавших ошибки синхронизации.
В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика«, в которой находится внешняя обработка «ГУИДОбъекта.epf«. Этот файл необходимо открыть в режиме «1С:Предприятие». С помощью обработки можно:
•определить уникальный идентификатор (GUID) объекта «1С:Предприятие». Для этого выберите интересующий вас объект в поле «Объект» и нажмите кнопку Сообщить ГУИД.
•определить объект, вызвавший ошибку при синхронизации с «Первой Формой», и проверить правильность заполнения его реквизитов. Для этого выберите тип объекта в поле «Объект», введите его GUID в поле «ГУИД» и затем нажмите кнопку «Найти по ГУИД». GUID и тип объекта можно посмотреть в журнале ошибок синхронизации.
Обработка «ГУИДОбъекта».
Нераспознанная версия сообщения
Если при любом обращении «Первой Формы» к 1С появляется сообщение
System.ServiceModel.CommunicationException: Нераспознанная версия сообщения/Unrecognized message version
необходимо проверить адреса сервисов и в частности параметр ?WSDL.
Синхронизация скрытых и «только для чтения» колонок ДП «Таблица»
Если в категории «Первой Формы» присутствует ДП «Таблица», в которой есть скрытые колонки или колонки с признаком «только для чтения», то данные для них перед отправкой берутся не из карточки задачи, а непосредственно из базы данных перед отправкой в 1С. Чтобы обмен данными в этом случае работал корректно, необходимо использовать очередь обмена, а не обмен данными в режиме онлайн. См. здесь.
Не загружаются данные из справочника 1С
Из-за ограничений на количество символов объекты с длинными названиями могут не сопоставляться. Попробуйте в 1С увеличить длину полей.
Неверный адрес сервиса 1С
В журнале ошибок есть ошибка вида:
Request format is unrecognized for URL unexpectedly ending in ‘/TC1CService.asmx’.
Это может означать, что в пользовательских настройках приложения в поле TC1C_ServiceAppAddress указан неверный адрес.
Не задан параметр GUIDExtParamID
В журнале ошибок есть ошибка вида:
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.ThrowHelper.ThrowKeyNotFoundException()
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at TCClassLib.ExtParams.Helper.GetExtParamName(Int32 extParamId, Nullable`1 subcatId, Boolean injectResources, Nullable`1 userId) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTCClassLibExtParamsExtParams.cs:line 2037
at TaskCenter.admin.Sync1C.AddDictionary.Page_Load(Object sender, EventArgs e) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTaskCenteradminSync1CAddDictionary.aspx.cs:line 168
Origin=WebForm
OriginId=2
User=Support
Url=https://your.1forma.net/admin/Sync1C/AddDictionary.aspx?Name=1С&OneCAddress=http:%smth%2F1CTCService.1cws&OneCServerName=http:%2F%2Fsmth&OneCUserName=ObmenForma&OneCPassword=(Пароль зашифрован)&TCAddress=https:%your.1forma.ru%2FTC1CService.asmx%3FWSDL&TCServerName=https:%2F%2Fnts.1forma.ru&TCUserName=1CServer&TCPassword=(Пароль зашифрован)&GUIDExtParamID=0&QueryRepeatTime=00:05:00&UsersFilterIn1Forma=false&TCCommentOnEpChange=true&OneCCredentialType=Basic
Проверьте настройки.
Полезные ссылки
Установка и администрирование модуля интеграции с 1С
Настройка синхронизации ДП «Таблица»
Журналы действий и ошибок
не надо трогать логин ws
Модераторы: Дмитрий Юхтимовский, Лысиков Денис
не надо трогать логин ws
Добрый день!
Настраиваю Ваш сервис — События тех. журнала 1С.
При обработке файлов тех.журнала или нажатии кнопки «Проверка веб-сервиса» появляется следующая ошибка:
{ОбщийМодуль.ТехнологическийЖурнал.Модуль(972)}: Ошибка при вызове метода контекста (WebAccess): Ошибка вызова операции сервиса: {http://www.status.org/webservice}:status:WebAccess(): Ошибка SOAP сервера: Нарушение прав доступа к операции Web-сервиса: {http://www.status.org/webservice}:status:WebAccess()
- mea
- Сообщений: 3
- Зарегистрирован: 22 апр 2015, 17:02
Re: Нарушение прав доступа к операции Web-сервиса
mea » 22 апр 2015, 19:17
Да, менял на тот, что прислали при регистрации
- mea
- Сообщений: 3
- Зарегистрирован: 22 апр 2015, 17:02
Re: Нарушение прав доступа к операции Web-сервиса
mea » 23 апр 2015, 08:07
Спасибо, смена на стандартные помогла!
- mea
- Сообщений: 3
- Зарегистрирован: 22 апр 2015, 17:02
Вернуться в Сервисы gilev.ru
Кто сейчас на форуме
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1
Содержание статей: 1С:Предприятие 8. Веб-сервисы
Предыдущая статья: 1С:Предприятие 8. Веб-сервисы. Возвращаем массив
Хочу рассказать об ошибках, с которыми столкнулся при разработке веб-сервисов на 1С. Статью буду дополнять по мере получения опыта.
1
Это сообщение об ошибке при подключении к веб сервису из PHP.
[31-Mar-2013 05:32:02 UTC] PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn’t load from ‘http://test.ru/test/ws/WebServices?wsdl’ : failed to load external entity
Данное сообщение говорит лишь о недоступности веб-сервера, на котором опубликована база. В этом случае попробуйте вручную вызвать http://test.ru/test/ws/WebServices?wsdl и убедиться, что WSDL формируется. Если не формируется, значит либо веб-сервер выключен, либо база опубликована по другому адресу или порту, либо блокирует фаервол. Могут быть и другие причины.
2
02-Apr-2013 13:46:10 UTC] PHP Fatal error: Uncaught SoapFault exception: [HTTP] Error Fetching http headers in /home/users/b/test/domains/test.ru/testDIR/test.php:169
Эта ошибка возникает если WSDL возвращается с ошибкой. Есть несколько причин для этой ошибки:
- Несогласованность пространств имен в конфигурации. Например в ws-операции тип возвращаемого значения не соответствует типу из XDTO. Это может возникнуть при сменен URI пространства имен пакета XDTO.
- Возникает если в PHP включить кеш WSDL. Кеш запоминает WSDL и при каждом вызове веб-операции не запрашивает его, но если вы поменяли веб-сервис, то произойдет ошибка. Вообще, при разработке кеш стоит отключить, а если уже все работает то для скорости лучше включить. Ускорение при отключенном кеше заметное. Для примера скажу, что создание объекта SoapClient с выключенным кешем занимает примерно 2 сек, а с включенным — за сотые доли секунды. Отключить можно так:
ini_set
(
"soap.wsdl_cache_enabled"
, 0);
или
$client
=
new
SoapClient(
'http://somewhere.com/?wsdl'
,
array
(
'cache_wsdl'
=> 0));
3
Ошибка SOAP сервера: Неизвестная ошибка. bad allocation.
Скорее всего недостаток оперативной памяти — проверьте запрос и результат вывода веб сервиса. Запрос может быть сложным, потому может быстро исчерпать оперативную память.
Обмен данными не работает
В пользовательском режиме приложения «1С:Предприятие» откройте настройки обмена с «Первой Формой». Убедитесь, что флажок «Запретить обмен с Первой Формой» не включен. Если флажок включен — отключите его и нажмите кнопку Записать и закрыть.
Запрет обмена с «Первой Формой».
Совпадение событий по времени при синхронизации
Возможна ситуация, когда два события — выполнение синхронизации данных и попытка изменения этих же данных штатными средствами «1С:Предприятие» — совпадают во времени. В этом случае пользователю при сохранении данных будет выдано сообщение о ошибке:
Сообщение об ошибке при совпадении изменений по времени.
Это нормальное поведение системы, поскольку в БД содержится уже другая версия данных. В этом случае форму документы/элемента справочника надо закрыть без сохранения и затем открыть снова.
Для администратора возникновение таких ошибок должно стать сигналом к пересмотру правил настройки бизнес-процесса. Возможно, для таких документов/справочников достаточно одностороннего обмена данных из «1С:Предприятие» в «Первую Форму».
Таймаут при синхронизации
При синхронизации данных между «Первой Формой» и 1С могут возникать ошибки из-за того, что не все данные успевают обработаться в одной системе за то время, пока вторая система ожидает ответа. В частности, таймауты могут возникать при синхронизации виртуальных документов, имеющих табличную часть с 200 и более записей. Таймаут на стороне 1С фиксируется в журнале ошибок.
На стороне «Первой Формы» таймаут ожидания ответа при вызове веб-сервиса 1С составляет 12 часов.
На стороне 1С таймаут можно регулировать. Для этого в «1С:Предприятие» в справочнике «Настройки обмена («Первая форма»)» откройте предопределенный элемент «Общие настройки» и в поле «Таймауты WS» увеличьте значение в поле «Прокси» – укажите, сколько секунд сервер 1С должен ждать ответа от сервера «Первой Формы» до обрыва соединения. Если указать значение 0, то таймаут не ограничен (сервер будет ждать до тех пор, пока операция не будет выполнена).
В поле «Определение» указывается длительность подключения к сервису (в секундах), а в поле «Прокси» – длительность выполняемой операции внутри «Первой Формы» (в секундах).
Настройки таймаута.
Недостаточно прав доступа в 1С
При обмене данными может возникать следующая ошибка:
«Error while calling 1С service. Нарушение прав доступа к операции Web-сервиса:
{www.rg-soft.ru}:rg1СTCService:PerformOperation().»
Причина возникновения ошибки связана с недостатком прав пользователя на стороне приложения «1С:Предприятие». Для исправления необходимо в конфигураторе «1С:Предприятие» проверить роли у пользователя, который указан в «Первой Форме» в настройках для подключения (атрибут OneCUserName в XML-настройках), и убедиться, что хотя бы одна из этих ролей имеет доступ к сервису.
Не выполняются регламентные задания
Если на стороне «1С:Предприятие» задания в очередь ставятся и видны в регистре сведений «Очередь обмена (Первая Форма)», но не выполняются, необходимо убедиться, что регламентное задание по обработке очереди есть в системе, оно включено, и регламентные задания не заблокированы на стороне сервера.
1. Проверка существования регламентного задания.
В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика», в которой находится внешняя обработка «Консоль заданий.epf». Этот файл необходимо открыть в режиме «1С:Предприятие». Появится окно, в котором будут отображены все регламентные задания в системе. Задание модуля синхронизации имеет название «Очередь обмена с Первой Формой».
2. Проверка, что задание включено.
В «Консоли Заданий» можно просмотреть, включена ли обработка и какой период ее выполнения.
3. Проверка блокировки.
На сервере «1С:Предприятие» можно полностью блокировать выполнение всех регламентных заданий (т.е. при блокировке все регламентные задания будут простаивать). Эту блокировку должны снимать специалисты «1С:Предприятие», т.к. нужно учитывать, какие из регламентных заданий уже включены и к каким последствиям это приведет.
4. Поиск и проверка объектов, вызвавших ошибки синхронизации.
В пакете «Модуль 1С», скачиваемом через интерфейс администратора «Первой Формы», есть папка «Диагностика«, в которой находится внешняя обработка «ГУИДОбъекта.epf«. Этот файл необходимо открыть в режиме «1С:Предприятие». С помощью обработки можно:
•определить уникальный идентификатор (GUID) объекта «1С:Предприятие». Для этого выберите интересующий вас объект в поле «Объект» и нажмите кнопку Сообщить ГУИД.
•определить объект, вызвавший ошибку при синхронизации с «Первой Формой», и проверить правильность заполнения его реквизитов. Для этого выберите тип объекта в поле «Объект», введите его GUID в поле «ГУИД» и затем нажмите кнопку «Найти по ГУИД». GUID и тип объекта можно посмотреть в журнале ошибок синхронизации.
Обработка «ГУИДОбъекта».
Нераспознанная версия сообщения
Если при любом обращении «Первой Формы» к 1С появляется сообщение
System.ServiceModel.CommunicationException: Нераспознанная версия сообщения/Unrecognized message version
необходимо проверить адреса сервисов и в частности параметр ?WSDL.
Синхронизация скрытых и «только для чтения» колонок ДП «Таблица»
Если в категории «Первой Формы» присутствует ДП «Таблица», в которой есть скрытые колонки или колонки с признаком «только для чтения», то данные для них перед отправкой берутся не из карточки задачи, а непосредственно из базы данных перед отправкой в 1С. Чтобы обмен данными в этом случае работал корректно, необходимо использовать очередь обмена, а не обмен данными в режиме онлайн. См. здесь.
Не загружаются данные из справочника 1С
Из-за ограничений на количество символов объекты с длинными названиями могут не сопоставляться. Попробуйте в 1С увеличить длину полей.
Неверный адрес сервиса 1С
В журнале ошибок есть ошибка вида:
Request format is unrecognized for URL unexpectedly ending in ‘/TC1CService.asmx’.
Это может означать, что в пользовательских настройках приложения в поле TC1C_ServiceAppAddress указан неверный адрес.
Не задан параметр GUIDExtParamID
В журнале ошибок есть ошибка вида:
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.ThrowHelper.ThrowKeyNotFoundException()
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at TCClassLib.ExtParams.Helper.GetExtParamName(Int32 extParamId, Nullable`1 subcatId, Boolean injectResources, Nullable`1 userId) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTCClassLibExtParamsExtParams.cs:line 2037
at TaskCenter.admin.Sync1C.AddDictionary.Page_Load(Object sender, EventArgs e) in C:TeamCityBuildAgentwork7a2e67b2a0804e2cTaskCenteradminSync1CAddDictionary.aspx.cs:line 168
Origin=WebForm
OriginId=2
User=Support
Url=https://your.1forma.net/admin/Sync1C/AddDictionary.aspx?Name=1С&OneCAddress=http:%smth%2F1CTCService.1cws&OneCServerName=http:%2F%2Fsmth&OneCUserName=ObmenForma&OneCPassword=(Пароль зашифрован)&TCAddress=https:%your.1forma.ru%2FTC1CService.asmx%3FWSDL&TCServerName=https:%2F%2Fnts.1forma.ru&TCUserName=1CServer&TCPassword=(Пароль зашифрован)&GUIDExtParamID=0&QueryRepeatTime=00:05:00&UsersFilterIn1Forma=false&TCCommentOnEpChange=true&OneCCredentialType=Basic
Проверьте настройки.
Полезные ссылки
Установка и администрирование модуля интеграции с 1С
Настройка синхронизации ДП «Таблица»
Журналы действий и ошибок
Всем доброе время суток, очень нужна ваша помощь. При тестировании веб-сервиса возникает следующая ошибка: Ошибка при вызове метода контекста (WritePKO) по причине: Ошибка вызова операции сервиса: { по причине: Ошибка SOAP сервера: Нарушение прав доступа к операции Web-сервиса: { имя сервера изменено на nameserver ) Читала на форумах все, что нашла, сломала голову. Роль, под которой вызывается обработка с подключением сервиса, имеет полные права, в т.ч. права на операцию сервиса. При создании сервиса в обработке использую статическую ссылку, сразу заполняю свойства «Пользователь» и «Пароль». В названиях тестовых баз (одна с публикацией сервиса, другая — для вызова) только латинские символы, путь до базы — тоже латиницей, операции и параметры сервиса — тоже латиницей. Версия платформы 8.3.5.1186, конфа обеих баз — Бухгалтерия предприятия (2.0.63.5). Вся инфа только по 8.1 или 8.2, может быть, в 8.3 есть отличия? У кого какие светлые мыли, подсказывайте. ссылки и и уже видела.
А от имени кого в базу логиниться внешнее соединение которое долбится в веб сервис?
На всякий случай текст моей простейшей процедуры
хороший вопрос, в базе несколько пользователей. есть с аутентификацией винды
wsdltest — а этот есть? и у него полные права?
1, сервис был зарегистрирован под пользователем wsdltest, он там есть, права полные
, только что обнаружила, нет, не дали ему прав, забыли. просто анекдот (не проверила, когда его создавали). спасибо тебе.
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
Добрый день!
Автосалон + Автосервис+ Автозапчасти ред 5
5.0.02.02
Пытаемся через интернет активировать дополнительные лицензии по полными правами как в 1С, так и на сервере, где лежит конфигурация и платформа.
В итоге получаем сообщение
Ошибка SOAP сервера: Нарушение прав доступа к операции Web-сервиса: {
http://www.rarus.ru/activation
}:Activation:Activate()
Вариант с получением по e-mail не очень удобен, т.к. непонятно через какое время нам ожидать файл активации.