soap, неверный аргумент

  1. 10 г. назад
    11.06.2014 01:33:18 отредактировано Stim

    Создал XDTO-пакет. текст выгруженной схемы:

    <xs:schema xmlns:tns="http://www.sample-package.org" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.sample-package.org" attributeFormDefault="unqualified" elementFormDefault="qualified">
    	<xs:complexType name="РезультатОперации">
    		<xs:sequence>
    			<xs:element name="Код" type="xs:string"></xs:element>
    			<xs:element name="Наименование" type="xs:string"></xs:element>
    		</xs:sequence>
    	</xs:complexType>
    	<xs:complexType name="Свойства">
    		<xs:sequence>
    			<xs:element name="Товар" type="tns:РезультатОперации" minOccurs="0" maxOccurs="unbounded"></xs:element>
    		</xs:sequence>
    	</xs:complexType>
    </xs:schema>
    

    код обработчика веб-сервиса:

    ТипXDTOРезультатОперации = ФабрикаXDTO.Тип("http://www.sample-package.org", "РезультатОперации");
        ТипXDTOСвойства = ФабрикаXDTO.Тип("http://www.sample-package.org", "Свойства");
        // создадим значение XDTO для свойства
        XDTOСвойства = ФабрикаXDTO.Создать(ТипXDTOСвойства);
         
        СпрНом = Справочники.Номенклатура;
         
        Выборка = СпрНом.Выбрать();
         
        Пока Выборка.Следующий() Цикл
         
        // создадим значение XDTO для результата
        XDTOПозиции = ФабрикаXDTO.Создать(ТипXDTOРезультатОперации);
         
        // заполним результат
    	//ЗаполнитьЗначенияСвойств(XDTOПозиции, Выборка);
    	
    	XDTOПозиции.Код = "123";
    	XDTOПозиции.Наименование = "йцу";
    	
    	
        // добавим результат в товары
        XDTOСвойства.Товар.Добавить(XDTOПозиции);
         
        КонецЦикла;
         
        Возврат XDTOСвойства;
         
    
    

    вроде ошибок нет, этот же код внешняя обработка выполняет и возвращает все как надо.

    но при открытии http://localhost/Web1C/ws/ws2.1cws?wsdl или при тестировании SoapUI возвращает:

    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header></soap:Header>
    <soap:Body>
    <soap:Fault>
    <faultcode>soap:Client</faultcode>
    <faultstring>Неверный аргумент.</faultstring>
    <detail>Неверный аргумент.</detail>
    </soap:Fault>
    </soap:Body>
    </soap:Envelope>

    почему неверный аргумент? где он?

  2. имхо, ты где-то намудрил в ws-ссылке

  3. короче, настрой заново сервис с нуля, где-то что-то ты намудрил. до 1С даже дело не доходит

или зарегистрируйтесь чтобы ответить!