Zend Soap AutoDiscover conflicts with EAccelerator
From FVue
Problem
When using Zend_Soap_AutoDiscover, the generated WSDL misses the types element:
<types> <xsd:schema targetNamespace="http://myserver/soap/index.php"/> </types>
Environment
- EAccelerator v0.9.6.1
- ZendFramework-1.12.3
Solution
It appears that EAccelerator is mangling the PHPDoc comments, which are necessary for Zend_Soap_AutoDiscover to do its work. The solution is to disable EAccelerator, for examply by putting the code below in the .htaccess file of the soap subdirectory:
php_flag eaccelerator.enable 0Now the generated WSDL is containing complexTypes all right:
<types> <xsd:schema targetNamespace="http://myserver/soap/index.php"> <xsd:complexType name="PersonSoapStruct"> <xsd:all> <xsd:element name="FirstName" type="xsd:string"/> <xsd:element name="LastName" type="xsd:string"/> </xsd:all> </xsd:complexType> </xsd:schema> </types>
Journal
20140304
- http://habrahabr.ru/post/122710/
- Russian blog post describing the problem thoroughly
- http://wordpress.org/support/topic/eaccelerator-php-crashed
- Forum thread with solution to disable EAccelerator via .htaccess instead of filter.
- http://www.reddit.com/r/lolphp/comments/1l493n/
- Within comment it says "import of types isn't there". No solution though,
Advertisement