1. nikolas 04.02.16 10:33 Сейчас в теме

1с 8.3 wsпрокси, исключение unknown software exception (0x0000005)

	ПутьКWSDL = "http://xx.xxx.xxx.xx/WARMDMS/WS/WS_ISIntegration.asmx?wsdl";
	Определения = Новый WSОпределения(ПутьКWSDL);
	СоединениеWS = Новый WSПрокси(Определения, "http://tempuri.org/", "WS_ISIntegration", "WS_ISIntegrationSoap");
	ИмяПользователя = "xxxx";
	Пароль = "xxxxx";
	ДанныеФайла = Новый ДвоичныеДанные(вхфайл);
	Данные = СоединениеWS.UploadFile(ИмяПользователя,Пароль,ДанныеФайла,"IP_Molotov.zip");
	Если ТипЗнч(Данные)=Тип("ОбъектXDTO") тогда
		Сообщить("Data= "+Данные.Data);Сообщить("Status= "+Данные.Status);Сообщить("Text= "+Данные.Text);
	Иначе 
		Сообщить(Данные);
	КонецЕсли;
Показать
Насколько я понял ВО время выполнения "Данные = СоединениеWS.UploadFile(ИмяПользователя,Пароль,ДанныеФайла,"IP_Molotov.zip");"
1Ска валится с ошибкой:
НО, не всегда, а периодически.

Подскажите где копать? в чем может быть причина?
Ответы
Избранное Подписка Сортировка: Древо
2. Serginio 798 04.02.16 15:28 Сейчас в теме
Попробуй через нетовского клиента

врап=новый COMОбъект("NetObjectToIDispatch45");
 врап.ВыводитьСообщениеОбОшибке=ложь;
  BasicHttpBinding=Врап.ПолучитьТипИзСборки("System.ServiceModel.BasicHttpBinding","System.ServiceModel.dll");
  binding = Врап.СоздатьОбъект(BasicHttpBinding);
  addres = Врап.СоздатьОбъект("System.ServiceModel.EndpointAddress","http://XX.XXX.XXX.XXX/WARMDMS/WS/WS_ISIntegration.asmx");

  WS_ISIntegrationSoapClient=Врап.ПолучитьТипИзСборки("WS_ISIntegration.ServiceReference1.WS_ISIntegrationSoapClient",ПутьКФайлу_WS_ISIntegration.dll");
  client = Врап.СоздатьОбъект(WS_ISIntegrationSoapClient,binding, addres);
  данные = Врап.ПолучитьТип("System.IO.File").ReadAllBytes(ПутьКФайлу);
 попытка

  ответ= client.UploadFile("логин", "пароль", данные, ИмяФайла);
  Сообщить("Data= "+ответ.Data);  Сообщить("Status= "+ответ.Status);   Сообщить("Text= "+ответ.Text);

 Исключение
	    Ошибка=врап.ПоследняяОшибка;
	    сообщить(Врап.ВСтроку(Ошибка)); 
       конецпопытки;

Показать


Прилагается архив где есть сборка WS_ISIntegration.dll

Вот статьи http://infostart.ru/public/448668/
http://1c.mista.ru/topic.php?id=763810
Прикрепленные файлы:
WS_ISIntegration.zip
3. Serginio 798 04.02.16 16:14 Сейчас в теме
Кстати он выдает ошибку
Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.

Правда у меня логин и пароль неправильные, но раньше он выдавал "Ошибка авторизации, неверные имя пользователя и пароль логин
"

Видно из-за этого 1С и вылетает
4. nikolas 04.02.16 18:44 Сейчас в теме
Из статьи
Как видно, скорость вызова .Net класса в 2.25 раза медленнее обычного метода. Это нужно учитывать при обработке больших массивов данных.

Видимо в этом причина. Есть место где в цикле передаются "склады"

Спасибо. Буду копать дальше. Сообщу о результате.
5. Serginio 798 04.02.16 23:04 Сейчас в теме
(4) Ну там 200 000 вызовов за 10 сек. У тебя сколько циклов?
Кроме того вызов вэб сервиса будет дольше. Но кстати ты можешь вызывать методы асинхронно.
6. Serginio 798 05.02.16 08:46 Сейчас в теме
И вызов вызову рознь. Если в примере внутри метода Add быстрая операция добавления символа, то вызов метода веб сервиса весьма долгая, и в итоге вызов через .Net может быть быстрее, за счет компиляции сериализации запроса и десериализации ответа
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Бизнес-архитектор 1С, ведущий консультант
Санкт-Петербург
Полный день

Руководитель проектов 1С
Санкт-Петербург
Полный день


Программист 1С
Краснодар
зарплата от 80 000 руб. до 160 000 руб.
Полный день

Консультант 1 С
Краснодар
зарплата от 50 000 руб. до 150 000 руб.
Полный день