If this is the wrong list for this request, please tell me where to send
I've just started using the SOAP classes define a web service and have
gotten a lot done, but am having some strange and peculiar errors.
I started by using this tutorial:
works fine by itself. Then I tried to return a SOAP_Fault and I started
getting "0 bytes returned from server" type messages. Usually from
curl_exec. I eventually traced the problem to Base::_serializeValue.
This function was getting called recursively with the same values. After
hours of debugging, I finally found that if I removed the $soapServer
variable from the server class and moved the server logic out of the
class (as in the actual SOAP examples) this problem went away. Seems
like a very strange thing to fix it, but it worked.
Now, I'm having the same kind of problem, but I can't find a cause. I'm
using a home-grown DB abstraction class (yes, I know I should switch to
PEAR::DB) and whenever a connection to Oracle fails (wrong DB name, for
instance), the Base::_serializeValue function gets called recursively
sometime after I return a value from my server function. If I put a
die('died here') before the return, all works as expected, including
creation of the SOAP_Fault. After the return, the recursion causes
Apache to segfault.
There are no internal soap variables within this class and I have even
tried unsetting the variable which holds the DB class. I've tried
switching to PEAR DB with no luck. I just tried only connecting to the
oracle database with OCILogon and the same thing happens. Looks like
this may be an actual PHP problem...
(707)566-2260 ext, 318