8.х WEB Web-сервисы

Тема в разделе ""1C:Web-Сервер"", создана пользователем Bonderos, 14 апр 2011.

  1. TopicStarter Overlay
    Bonderos
    Offline

    Bonderos

    Регистрация:
    14 апр 2011
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте.
    Мне необходимо создать web-сервис на стороне 1С.
    таким образом что бы со стороны сайта можно было обращаться и передавать параметры на сторону 1С.

    Я поднял web-клиент, настроил обработку веб-сервисов в apache
    создал 1 веб-сервис у которого создал операцию "Добавить".

    если обращаться к нему чз http запрос выдает корректный xml с существующем методом.

    но при попытке вызвать метод возникает ошибка...

    Код:
    <?php
    client = new SoapClient("http://xxxxxxx/remote/ws/ws1.1cws?wsdl", 
    array(    
    'trace' => 1, 
    'login' => "Администратор",
    'password' => "xxxx", 
    'exceptions' => 1
    )
    );
    
    result = client->Добавить( );
    ?>
    
    
    
    Коннект проходит нормально... но на вызов операции пишет


    atal error: Uncaught SoapFault exception: [soap:Client] Неверный формат. in Z:\home\conf\www\1.php:21 Stack trace: #0 [internal function]: SoapClient->__call('???????????????...', Array) #1 Z:\home\conf\www\1.php(21): SoapClient->Добавить() #2 {main} thrown in Z:\home\conf\www\1.php on line 21





    как настроить механизм вес-сервисов? в чем ошибка?
    Буду очень признателен!
  2. TopicStarter Overlay
    Bonderos
    Offline

    Bonderos

    Регистрация:
    14 апр 2011
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Эти проблемы поборол.... теперь не выходит передать параметры через php

    когда вызываю операцию без параметров возвращает верный результат...
    но если определяю параметр на стороне 1С и делаю вызов с параметром то пишет

    Fatal error: Uncaught SoapFault exception: [soap:Client] Ошибка разбора SOAP сообщения: параметр не найден.

    Код:
    $result = $client->__soapCall("Добавить", array( '1' ), NULL, $header  );
    
    
  3. serpis
    Offline

    serpis

    Регистрация:
    31 янв 2012
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Народ кто разобрался с работой из php с в######ервисами 1С

    Код на php:

    <html>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
    <?PHP
    $client = new SoapClient("http://192.168.0.6/webs/ws/Test.1cws?wsdl", array('login' => "Web",'password' => "Ytpfdbcbvjcnm", "trace" => 1,"exceptions" => 0));
    $result = $client->Name("");

    var_dump($client->__getTypes());
    echo "<br>";

    echo ">>1",$result->Name,"<<<br>";
    echo ">>2",$result->NameResponse,"<<<br>";

    print "<pre>\n";
    print "Запрос:\n".htmlspecialchars($client->__getLastRequest()) ."\n";
    print "Ответ:\n".htmlspecialchars($client->__getLastResponse())."\n";
    print "</pre>";
    ?>
    </html>

    Ответом формируется:

    array(2) { [0]=> string(15) "struct name { }" [1]=> string(39) "struct nameResponse { string return; }" }
    >>1<<
    >>2<<
    Запрос:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://127.0.0.1"><SOAP-ENV:Body><ns1:name/></SOAP-ENV:Body></SOAP-ENV:Envelope>

    Ответ:
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header/>
    <soap:Body> <m:nameResponse xmlns:m="http://127.0.0.1">
    <m:return xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello</m:return>
    </m:nameResponse></soap:Body>
    </soap:Envelope>


    Результатом должен быть просто строка:
    "Hello"

    Подскажите пожалуйста, что нетак?
Похожие темы
  1. Irys
    Ответов:
    8
    Просмотров:
    5.154
  2. Nat12345
    Ответов:
    1
    Просмотров:
    1.139
  3. Науменко
    Ответов:
    1
    Просмотров:
    865
  4. Hatycik
    Ответов:
    33
    Просмотров:
    2.638
Загрузка...

Поделиться этой страницей