Имя: Пароль:
1C
1С v8
Вебсервис 1c из PHP (soap). Помогите решить проблему.
0 arsik
 
гуру
09.04.13
13:31
Есть скрипт php который обращается к вебсервису 1С (8.1 вебсервис опубликован на этой же машине - centos). И примерно в 10% случаев вылазят нижеприведенные ошибки. При повторном обращении к вебсервису с теми же самыми данными отрабатывает нормально.

[08-Apr-2013 20:12:47] PHP Fatal error:  Uncaught SoapFault exception: [VersionMismatch] Wrong Version in /var/www/html/bsys/index.php:197
Stack trace:
#0 /var/www/html/bsys/index.php(197): SoapClient->__call('???????????????...', Array)
#1 /var/www/html/bsys/index.php(197): SoapClient->ПолучитьРезультатПроведения(Array)
#2 {main}
 thrown in /var/www/html/bsys/index.php on line 197

[09-Apr-2013 05:57:02] PHP Fatal error:  Uncaught SoapFault exception: [HTTP] Error Fetching http headers in /var/www/html/bsys/index.php:160
Stack trace:
#0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://localhos...', '', 2, 0)
#1 /var/www/html/bsys/index.php(160): SoapClient->__call('???????????????...', Array)
#2 /var/www/html/bsys/index.php(160): SoapClient->ПолучитьРезультатПроверки(Array)
#3 {main}
 thrown in /var/www/html/bsys/index.php on line 160


вот кусок скрипта

$ws_login = 'login';
$ws_password = 'password';
$ws_exceptions = 1;
$ws_encoding = 'UTF-8';
$ws_soap_version = SOAP_1_2;
$ws_url = 'http://localhost/ws/epp.1cws?wsdl';

// Отключаем кэширование для SOAP.
ini_set("soap.wsdl_cache_enabled", "0");

$options = array(
 'login' => $ws_login,
 'password' => $ws_password,
 'exceptions' => $ws_exceptions,
 'encoding' => $ws_encoding,
 'soap_version'=> $ws_soap_version
);

// Подключаемся к веб-сервису через SOAP
$client = new SoapClient($ws_url , $options);
$params = array('ТекстЗапроса' => $xml_query,'НомерДоговора' => $kc_account);
$sp_data = $client->ПолучитьРезультатПроверки($params)->return; //Это строка 160

$sp_data = $client->ПолучитьРезультатПроведения($params)->return; //Это строка 197
1 arsik
 
гуру
09.04.13
14:54
ну хоть что ни будь скажите.
2 + 2 = 3.9999999999999999999999999999999...