Работа с Zend Soap Classes и Auto WSDL
-
26-09-2019 - |
Вопрос
Что-то очень странное. 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 имеют некоторые проблемы с Saapserver
Uncaught Exception '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-> Ручка () # 2 {main} брошена в z: home localhost www zend soap server.php на строке 694
Я просто не понимаю, почему? Нет дополнительного символа в WSDL, как пространство или n, все заголовки указаны.
PHP 5.2.12 ZF 1.10.0
Решение
Все проблемы из Eaccelerator