Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

помогите разобраться: новый WSОпределения

помогите разобраться: новый WSОпределения
Я
   hawksib
 
23.11.18 - 07:34
справка:

WSОпределения (WSDefinitions)
Из WSDL файла
Синтаксис:

Новый WSОпределения(<МестоположениеWSDL>, <ИмяПользователя>, <Пароль>, <ИнтернетПрокси>, <Таймаут>, <ЗащищенноеСоединение>, <ИспользоватьАутентификациюОС>)
Параметры:

<МестоположениеWSDL> (обязательный)

Тип: Строка.
Местоположение WSDL файла, откуда будет получено определение веб-сервисов. 
<ИмяПользователя> (необязательный)

Тип: Строка.
Имя пользователя, которое будет использоваться для аутентификации при получении определений веб-сервисов. 
<Пароль> (необязательный)

Тип: Строка.
Пароль пользователя, который будет использоваться для аутентификации при получении определений веб-сервисов. 
<ИнтернетПрокси> (необязательный)

Тип: ИнтернетПрокси. 
Содержит объект ИнтернетПрокси, используемый для загрузки WSDL документа по протоколу HTTP.
Если не указан, то используются настройки прокси по умолчанию.
Значение по умолчанию: Неопределено. 
<Таймаут> (необязательный)

Тип: Число.
Таймаут соединения, осуществляемого для загрузки WSDL описания веб-сервиса, в секундах. 0 - не устанавливать таймаут.
Значение по умолчанию: 0. 
<ЗащищенноеСоединение> (необязательный)

Тип: ЗащищенноеСоединениеOpenSSL; Неопределено. 
Объект защищенного соединения для осуществления HTTPS соединения для загрузки WSDL описания веб-сервиса.
Значение по умолчанию: Неопределено. 
<ИспользоватьАутентификациюОС> (необязательный)

Тип: Булево. 
Включает использование аутентификации NTLM или Negotiate на сервере.
Значение по умолчанию: Ложь.
Описание:

Создает определение веб-сервисов из WSDL-файла.
Если используемый WSDL-файл некорректен, будет вызвано исключение.

пишу так:
ОпределениеWS = Новый WSОпределения("http://api.xxx.ru/schema/service.wsdl";);

создается объект с типом WSОпределения, но так как всё тянется с интернета, проходит время, хочу ускорить
сохраняю wsdl на диск, добавляю макет, с типом двоичные данные и называю его service_wsdl, пишу следующее:

ФайлWSDL = ПолучитьИмяВременногоФайла("wsdl");
ПолученныйМакет = ПолучитьМакет("service_wsdl");
ПолученныйМакет.Записать(ФайлWSDL);
ОпределениеWS = Новый WSОпределения(ФайлWSDL);
УдалитьФайлы(ФайлWSDL);

конструктор не срабатывает, в ошибке написано следующее:
Ошибка при вызове конструктора (WSОпределения): При вызове веб-сервиса произошла ошибка. При создании описания сервиса произошла ошибка. : Файл не обнаружен 'C:\Users\user\AppData\Local\Temp\Service.wsdl'
при этом переменная ФайлWSDL имеет следующее значение: 'C:\Users\user\AppData\Local\Temp\v8_BF2A_2bb.wsdl', и по указанному пути хранится в точности такой же файл, какой был скачан с интернета

помогите разобраться, что не так, ведь в конструктор в первый параметр передается строка, как и указано в справке
 
 
   ДенисЧ
 
1 - 23.11.18 - 07:39
Правов на файл может не хватить.
А почему бы его в конфигурацию не запихнуть?
   hawksib
 
2 - 23.11.18 - 07:40
(1) как прав не хватает? записать же смог
   hawksib
 
3 - 23.11.18 - 07:57
конфу нельзя обновлять
   ДенисЧ
 
4 - 23.11.18 - 07:58
При создании описания сервиса произошла ошибка. : Файл не обнаружен 'C:\Users\user\AppData\Local\Temp\Service.wsdl' 
при этом переменная ФайлWSDL имеет следующее значение: 'C:\Users\user\AppData\Local\Temp\v8_BF2A_2bb.wsdl',

Попробуй найти различия...
   hawksib
 
5 - 23.11.18 - 08:00
(4) я про это и говорю, специально написал, что переменная по-другому называется, чем путь к файлу, который не обнаружен
   hawksib
 
6 - 23.11.18 - 08:03
в файле содержится такое : <wsdl:definitions name="Service"
   hawksib
 
7 - 23.11.18 - 09:09
(6) разобрался, проблема была не в этом, в тексте wsdl было location = "Service.wsdl", вот с этим и была проблема

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует