Issue Type: Bug Created: 2008-11-26T03:17:10.000+0000 Last Updated: 2009-02-16T14:06:09.000+0000 Status: Resolved Fix version(s): - 1.8.0 (30/Apr/09)
Reporter: Jan Pieper (jpieper) Assignee: Benjamin Eberlei (beberlei) Tags: - Zend_Soap_Wsdl
Related issues: Attachments: - ZF-5046.diff
I created a soap service with Zend_Soap_Server and Zend_Soap_AutoDiscover to provide my functionality to non-php-applications. We couldn´t get it working for Java so we searched for the problem and created the same service in java and created a wsdl definition from this java service. We compared both wsdl definitions and changed all differences in wsdl definition created by Zend_Soap_AutoDiscover until we found the problem.
Java seems to cannot handle this:
<pre class="highlight"> So we changed it to:
After we´ve changed it we could consume my soap service without any problems. Don´t know why java has problems with "getStaticStringReturn". We found many different name-attribute values and no definition that it must be "return". We also tested the modified wsdl definition with Zend_Soap_Client and it works fine.
Posted by Jan Pieper (jpieper) on 2008-11-26T03:18:18.000+0000
Added diff to solve problem.
Posted by Benjamin Eberlei (beberlei) on 2008-11-26T21:43:46.000+0000
What do you mean by "java seems to cannot handle this". Which particular WSDL to Java Generators did you test?
Posted by Jan Pieper (jpieper) on 2008-11-27T08:52:26.000+0000
We created java classes with wsimport (https://jax-ws.dev.java.net/jax-ws-ea3/docs/…) from our wsdl definition what was created by Zend_Soap_AutoDiscover. After we could not consume data with the created java classes (we were clueless why at this moment), we setup the same soap service in java and created a wsdl definition by jax-ws. After that we compared both wsdl definitions and the main difference between these both definitions was the change I mentioned above.
Posted by Benjamin Eberlei (beberlei) on 2008-12-11T06:28:17.000+0000
Implemented a new function setResponseMessageReturnNameCompability, which calls all return message parts "return" when set to true.
This "hackish" implementation is needed for backwards compability reasons, since we cannot prove that it still works for all other cases. This is madness sadly, but steems from the problematic AutoDiscover implementation in the first place.
Posted by Benjamin Eberlei (beberlei) on 2009-02-16T14:05:58.000+0000
Implemented a simpler bugfix that acknoweldges that "return" is the SOAP/WSDL Standard, whereas other naming schemas are to be handled as "bug".
Have you found an issue?
See the Overview section for more details.