Issues

ZF-7181: Namespaces and WSDL Autodiscovery - PHP 5.3

Description

In the new relase of PHP (5.3) namespaces was introduced. When using these in conjuction with the AutoDiscover there are some problemes.

Consider this example.

/**
* @param some\package\Product
* @return boolean
*/
function foo($obj) {
 // implementation
 returns true;
}

When the autodiscover generates the WSDL, the complex definition of Object is namespaced in the wsdl complex name and in the message part type definition, example.

This looks ok, but when trying to connect this to SoapUi ie. this failes because of the slashes in the namespace.

I found a workaround for this, by rewriting the type which is send down to DefaultComplexType.php. That way the namespace is seperated by . (dott) in the wsdl, but it uses the correct namespace when reflects the object, creating the complex type.

We will probably end up extending the wsdl strategy classes, implementing this solution, but it would be nice if this could be fixed in an upcomming release of the Zend framework.

Comments

very good point :-)

Can you share the workaround please?