RE: [PEAR-DEV] Two SOAP Issues
| From: | Dietrich Ayala | Date: | Mon, 18 Mar 2002 18:26:18 +0000 |
| Subject: | RE: [PEAR-DEV] Two SOAP Issues | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-5018@lists.php.net to get a copy of this message | ||
I brought the class up to the point at which it was functional for my needs, but haven't worked
on it since last fall. I don't know
if Shane did any development on the server class when he PEAR-ified it.
Number one on the to-do list would be a security audit :)
The first version of the server required that the user call a method that 'registered'
each function to be exposed as a service.
The server would then deny requests for functions that weren't 'registered'. This
wasn't very popular, I got lots of requests to not
make this mandatory.
I think that it should be mandatory by default in PEAR, and maybe have a class level variable in the
server to toggle it. If/when
the server gets WSDL generation added, then service registration will be mandatory if the user wants
the functions to show up in the
WSDL.
Shane did do some work on the message parser, so he might be able to address the problem with your
int being deserialized as a
string.
Dietrich
> -----Original Message-----
> From: Christian Dickmann [mailto:chrisdicki@gmx.de]
> Sent: Monday, March 18, 2002 6:51 AM
> To: pear-dev@lists.php.net
> Subject: [PEAR-DEV] Two SOAP Issues
>
>
> Hi,
>
> after some nice talks about Microsofts .NET on Cebit,
> i decided to test SOAP. I tried a really simple
> example, but got 2 behaviors i didn't expect.
>
> First of all my two scripts (Client and Server):
> Server:
> <?php
> include("SOAP/Server.php");
>
> function echoInteger()
> {
> return (int) 5;
> };
>
> $server = new SOAP_Server;
> $server->service($HTTP_RAW_POST_DATA, TRUE);
> ?>
>
> Client:
> <?php
> include("SOAP/Client.php");
>
> $soapclient = new
> SOAP_Client("http://xxx/soap/server1.php");
> $res = $soapclient->call("echoInteger");
>
> echo $soapclient->response;
>
> echo "<!-- ";
> var_dump($res);
> echo "-->";
> ?>
>
> First unexpected behavior:
> $res is not an Integer! Var_dump() outputs:
> string(1) "5", but the Server XML Code seems
> to be OK:
> - <echoIntegerResponse>
> <return xsi:type="xsd:int">5</return>
> </echoIntegerResponse>
>
> Second unexpected behavior:
> It is possible to execute every Funktion on the
> Server. I just tried phpinfo() and strlen(), but
> it worked fine ...
>
> If this es expected behavior just tell me :)
>
> Christian Dickmann
>
>
>
> --
> PEAR Development Mailing List (http://pear.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>