Php+Soap+Microsoft Exchange 2007, не парсится wsdl

Korner

Новичок
Php+Soap+Microsoft Exchange 2007, не парсится wsdl

Ребята, это вынос мозга, но.
Надо получать данные из ексченджа
Есть MS Exchange Server 2007, Есть web service, висящий на https
Все усложняется NTLM авторизацией..
итак, используя наработки коллеги ( http://rabaix.net/en/articles/2008/03/13/using-soap-php-with-ntlm-authentication )
делаю запрос к https://domain/EWS/Services.wsdl

опущу инклудимые классы, они есть в ссылке
разве что добавил туда в методы, где работаем с CURL опции

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

для того, чтобы не проверять сертификаты

итак, код получается такой
PHP:
$array();
$url = 'https://domain/EWS/Services.wsdl';
stream_wrapper_unregister('https');
stream_wrapper_register('https', 'MyServiceProviderNTLMStream') or die("Failed to register protocol");

$client = new MyServiceNTLMSoapClient($url, array() );
Авторизация проходит нормально, скачивается Services.wsdl, вместе с ним идут messages.xsd и types.xsd
а потом появляется ошибка

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't bind to service in /var/www/devs/ntlm/go.php:222 Stack trace: #0 /var/www/devs/ntlm/go.php(222): SoapClient->SoapClient('https://...', Array) #1 {main} thrown in /var/www/devs/ntlm/go.php on line 222

Если честно, уже не знаю куда и подступится...
через SoapUI этот вебсервис работает.. ошибок не дает..

выручайте... как избавится от этой ошибки и чтоб все парсилось как надо...

Спасибо
 

Korner

Новичок
222 строка это
$client = new MyServiceNTLMSoapClient($url, array() );
весь код, не читаю классов, которые я взял по ссылке приведен...

этот код работает на других веб сервисах.. пробовал.. все окей
а вот с Exchange какаято ошибка в парсе... обойти бы ее...
 

DiMA

php.spb.ru
Команда форума
SOAP в пхп сделан через жопу и с мелкософтными серверами не работает

Проблемы SOAP: простейшее решение - парсишь сам, в этом поможет автоматическая справка мелкософтного сервера, она пишет о структуре запроса и ответа.

Затыки с кривостью XML-образных структурах, которую руками парсить лень, а встроенные функции падают - так же руками (методом последовательного удаления кусков XML) определяешь кривые места и исправляешь на нормальные (типа <x/> на <x></x> или <x aaa:bbb>).
 
Сверху