ID: 36616
User updated by: dennisyerger84 at comcast dot net
Reported By: dennisyerger84 at comcast dot net
Status: Open
Bug Type: SOAP related
Operating System: Windows XP
PHP Version: 5.1.2
New Comment:
minor edit
Previous Comments:
------------------------------------------------------------------------
[2006-03-05 09:45:51] dennisyerger84 at comcast dot net
Description:
------------
I've been using php to create web services and experiment with them.
One of the things I think is important to web services is true object
functionality, which means setting a value and being able to retrieve
that same value later. For example, if I want to call an operation (a
setter) to set a certain value for an instance of a service port, I
want to be able to retrieve that same value with a call to other
operation (a getter) if I wanted to. The problem I've been having is
when I make more than one operation call on a single instance of
SoapClient. However, this problem only occurs when I use another php
script as the service port itself. In other words, I'm using php at
both ends: client and server. But when the service port is, say, a
coldfusion component, I get no trouble at all. Could this be an issue
with the web server I'm running? I am running Abyss Web Server X1 for
both my client and server scripts.
Reproduce code:
---------------
client side script:
$c = new SoapClient("http://localhost/session.php?wsdl");
$c->setString("my name is dennis");
echo $c->getString(); //this causes the error. If I called this first
it would cause no trouble until I made another call to an operation
server side script:
//Session class definition goes above the follwing code:
$server = new SoapServer("Session.wsdl");
$server->setClass("Session");
$server->setPersistence(SOAP_PERSISTENCE_SESSION);
$server->handle();
Expected result:
----------------
my name is dennis
Actual result:
--------------
SoapFault exception: [HTTP] Error Fetching http headers in C:\Program
Files\Abyss Web Server\htdocs\client.php:9
Stack trace:
#0 [internal function]: SoapClient->__doRequest('<?xml version="...',
'http://localhos...', 'http://tempuri....', 1)
#1 [internal function]: SoapClient->__call('getString', Array)
#2 C:\Program Files\Abyss Web Server\htdocs\client.php(9):
SoapClient->getString()
#3 {main}
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=36616&edit=1