Нечто очень странное.
WSDL файл генерирует нормально. Вот источник простого класса
class SoapTest
{
/**
* Prapapapapapapap
* @return string Bls bls
*/
public function getList()
{
return "code";
}
}
Код для WSDL, Сервер, Клиент
if (isset($_REQUEST['wsdl'])) {
$ad = new Zend_Soap_AutoDiscover();
$ad->setClass('SoapTest');
$ad->handle();
} else if ( isset($_REQUEST['client']) ) {
$client = new Zend_Soap_Client("http://localhost/test.php");
echo $client->getList();
}
else {
$server = new Zend_Soap_Server("http://localhost/test.php?wsdl");
$server->setClass('SoapTest');
$server->handle();
}
У автоматически сгенерированного WSDL есть некоторые проблемы с SoapServer
Необработанное исключение «Zend_Soap_Server_Exception» с сообщением «Неверный XML» в Z: \ home \ localhost \ www \ Zend \ Soap \ Server.php: 694 Трассировка стека: # 0 Z: \ home \ localhost \ www \ Zend \ Soap \ Server.php (817): Zend_Soap_Server -> _ setRequest ('') # 1 Z: \ home \ localhost \ www \ test.php (54): Zend_Soap_Server-> handle () # 2 {main} добавляется Z: \ home \ localhost \ www \ Zend \ Soap \ Server.php в строке 694
Я просто не понимаю, почему? В WSDL нет лишних символов, таких как пробел или \ n, все заголовки указаны.
Php 5.2.12
ZF 1.10.0