|
Web-сервис. Ошибка 400 | ☑ | ||
---|---|---|---|---|
0
1CNachalo
12.12.20
✎
21:21
|
Есть веб-сервис и общая команда. В общей команде код:
Попытка ВСОпределение = Новый WSОпределения("http://192.168.___.__/t10/ws/OD.1cws?wsdl";); //#1 ВСервер = ВСОпределение.Сервисы.Получить("OD","OD"); ВТочкаВхода = ВСервер.ТочкиПодключения.Получить("ODSoap"); ВТОперация = ВТочкаВхода.Интерфейс.Операции.Получить("Sinhron"); Данные = Новый ХранилищеЗначения("Некие данные",Новый СжатиеДанных(9)); ДанныеXDTO = ВСОпределение.ФабрикаXDTO.Создать(ВТОперация.Параметры.Получить("Dan").Тип,Данные); ВСПрокси = Новый WSПрокси(ВСОпределение,"OD","OD","ODSoap"); Ответ = ВСПрокси.Синхронизация(ДанныеXDTO); Возврат Истина; Исключение Сообщить(ОписаниеОшибки()); Возврат Ложь; КонецПопытки; При нажатии на кнопку ВыполнитьСинхронизацию сначала было все хорошо, т.е. выполнение шло по ветке Попытка, до Ответ доходило точно, в ветку Исключение выполнение не переходило. Но затем, не понятно почему, при очередном тестировании кнопки с общей командой, сразу после прохождения строки кода #1 выполнение стало переходить к Исключению и в результате — ошибка (указывает именно на эту строку кода (выше) и код ошибки 400). (1с и Apache2.2 переустановил -- не помогло) При этом базу в браузере вижу, xml-файл тоже. ———————————— Примерно в момент возникновения этой ошибки началось следующее: даже если база нигде не открыта (ни в браузере, ни на ПК), выдается сообщение: “Достигнуто предельное количество подключений к ИБ”. Чтобы выходить из этой ситуации приходится часто чистить кэш и останавливать сервер. Что это может быть? Как исправить? |
|||
1
SuperMario
12.12.20
✎
21:43
|
Старо как Мир - это код ответа HTTP, который означает, что сервер не смог обработать запрос)
Залезьте каким-нить SOAPUI по ссылке "http://192.168.___.__/t10/ws/OD.1cws?wsdl" (или вставьте в браузер) Что в ответ? |
|||
2
1CNachalo
12.12.20
✎
21:54
|
В ответ в браузере xml-схема.
|
|||
3
SuperMario
12.12.20
✎
22:35
|
(2) сори. Не дочитал полностью (0)
|
|||
4
1CNachalo
13.12.20
✎
13:14
|
Вбил неверный адрес http://192.168.___.__/t10/ws/OD?wsdl
Т.е. не OD.1cws?wsd, а OD?wsd -- всё равно дает xml-схему. Это как вообще? Может ошибка связана как-то с этим? |
|||
5
acht
13.12.20
✎
14:08
|
Приведи полный текст ошибки, которое выбрасывает исключение.
Вангую, что у тебя учебная платформа и в пуле застревает твой же предыдущий сеанс. |
|||
6
1CNachalo
13.12.20
✎
16:02
|
(5) Платформа учебная. Да, есть ощущение, что действительно застревает предыдущий сеанс. Но что с этим делать?
---------- {ОбщаяКоманда.ВыполнитьСинхронизацию.МодульКоманды(15)}:Ошибка при вызове конструктора (WSОпределения): при создании описания сервиса произошла ошибка URL: http://192.168.___.__/t10/ws/OD.1cws?wsdl Код ответа сервера: 400 |
|||
7
acht
13.12.20
✎
20:28
|
(6) В файле default.vrd установить размер пула в 1 и время жизни соединения в пула во что нибудь минимальное.
|
|||
8
SuperMario
13.12.20
✎
22:31
|
Припоминаю, у меня подобное было когда-то с базовой БП 3.0.
Она локально/однопользовательская. Начались проблемы с работой через WEB, когда там пользователь работает. Был уверен, что WEB/HTTP сервисы не занимают клиентскую лицензию. Но практика показала обратное. У учебной версии то же самое: "количество одновременных сеансов работы с информационной базой ограничено одним сеансом". Случайно никто в это время не работает в базе (http://192.168.___.__/t10) когда соединение поднимается? Вот что пишет: https://forum.infostart.ru/forum9/topic128169/ |
|||
9
seevkik
14.12.20
✎
04:05
|
(8) Они занимают лицензию во время выполнения запроса
|
|||
10
1CNachalo
14.12.20
✎
08:36
|
(7) Т.е в файле изначально 2 таких фрагмента:
<> poolSize="10" poolTimeout="5"/> </> Исправляю в обоих на <> poolSize="1" poolTimeout="1"/> </> Пока дает ту же ошибку. |
|||
11
1CNachalo
14.12.20
✎
08:38
|
(8) Случайно никто в это время не работает в базе (http://192.168.___.__/t10) когда соединение поднимается?
------------------------------ Не, я ж тут вообще один, сижу, тренируюсь, застрял. |
|||
12
1CNachalo
14.12.20
✎
08:41
|
(9) Что именно занимает лицензию?
И как это исправить? Как-то работало до определенного момента, переходило дальше по функции, ошибку не давало. Потом резко -- ошибка 400. |
|||
13
acht
14.12.20
✎
08:45
|
(10) > изначально 2 таких фрагмента
Там больше двух. В standardOdata, в ws, в httpServices и в pool. В последнем оно size и maxAge, а не то, что ты поставил |
|||
14
1CNachalo
14.12.20
✎
12:56
|
(13) Не нахожу. У меня вот так:
<?xml version="1.0" encoding="UTF-8"?> //1 <point xmlns="http://v8.1c.ru/8.2/virtual-resource-system" //2 xmlns:xs="http://www.w3.org/2001/XMLSchema"//3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"//4 base="/t10"//5 ib="File="D:\1C\тест\кр6";">//6 <debug enable="true"//7 protocol="http"//8 url="192.168.___._"/>//9 <httpServices publishByDefault="false"/>//10 <standardOdata enable="true"//11 reuseSessions="autouse"//12 sessionMaxAge="1"//13 было 20 poolSize="1" //14 было 10 poolTimeout="1"/>//15 было 5 <analytics enable="true"/>//16 <ws>//17 <point name="OD"//18 alias="OD.1cws"//19 enable="true"//20 reuseSessions="autouse"//21 sessionMaxAge="1" //22 было 20 poolSize="1" //23 было 10 poolTimeout="1"/> //24 было 5 </ws>//25 </point>//26 Что нужно исправить? Ошибку пока выдает ту же |
|||
15
acht
14.12.20
✎
13:09
|
||||
16
1CNachalo
14.12.20
✎
18:27
|
(15) пример из статьи
<pool size="50" maxAge="10" attempts="2" attepmtTimeout="1" waitTimeout="1"/> ставлю в standardOdata, в ws, в httpServices и в pool. Получаю так <?xml version="1.0" encoding="UTF-8"?> <point xmlns="http://v8.1c.ru/8.2/virtual-resource-system" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" base="/fm" ib="File="D:\1C\тест\WebSer_активныеСистемы";"> <debug enable="true" protocol="http" url="127.0.0.1"/> <ws enable="false" poolsize="5" maxAge="1" attempts="2" attepmtTimeout="1" waitTimeout="1"/> <httpServices publishByDefault="false" poolsize="5" maxAge="1" attempts="2" attepmtTimeout="1" waitTimeout="1"/> <standardOdata enable="true" reuseSessions="autouse" sessionMaxAge="2" poolSize="1" poolTimeout="5"/> <analytics enable="true"/> </point> |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |