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:
http://www.phppatterns.com/index.php/article/articleview/41/1/2/ which
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... 

Justin Patrin
Junior Developer
PNI Corporation
(707)566-2260 ext, 318
(707)566-4318 Fax

Reply via email to