Problemas con soapclient.

[email protected] (Pablo Braulio)
Newsgroups php.general.es
Message-ID <CAAkPJa9SeOLrFENt5HrFBCQi81KMu0Qbwz0YptKjOUgAi+q=8w@mail.gmail.com>
Hola a todos.

Tengo montado un webservice y estoy tratando de acceder a sus métodos con
soapclient, y me encuentro con problemas. Espero me podáis ayudar.

Tengo la certeza de que el WS está funcionando correctamente, pues acceden a
él desde otras ubicaciones y con otros lenguajes (creo que java).
Por otro lado, veo que el método __getFunctions(), me devuelve un array con
todos los métodos.

$client= new SoapClient('url/xxx.wsdl', array(
            'trace'=>1,
            'encoding'=>'UTF-8'
        ));
       var_dump($client->__getFunctions());

Salida:

array(5) { [0]=> string(71) "string getUserInfo(string $session, string
$pswd, int $game, int $room)" [1]=> string(95) "string buyCredit(string
$session, string $pswd, int $amount, int $game, int $gameId, int $room)"
[2]=> string(121) "int setLog(string $session, string $pswd, int $game, int
$amount, int $idSpin, int $idSpinMj, int $room, string $results)" [3]=>
string(76) "int logout(string $session, string $pswd, int $game, int $room,
int $gameId)" [4]=> string(61) "string sendData(string $table, string $pswd,
string $xmlData)" }

Para acceder al método "sendData", pongo lo siguiente:

$opciones= array(
            'table'=>xxx',
            'pswd'=> 'xxxx',
            'xmlData'=> 'xxxx'
        );

        $client= new SoapClient('url/xx.wsdl', array(
            'trace'=>1,
            'encoding'=>'UTF-8'
        ));
        $client->__call("sendData", $opciones);

Siempre me devuelve este error.
Fatal error: Uncaught SoapFault exception: [SOAP-ENV:Server] Internal Server
Error in ....php:22 Stack trace: #0 ....php(22):
SoapClient->__call('sendData', Array) #1

Este método funciona perfectamente, pues con SOAPUI (como plugin de
netbeans), lo estoy llamando y se ejecuta bien.

También he probado poniendo $client->__soapCall("sendData", $opciones); y el
error es el mismo.

¿Alguien podría ayudarme con esto?.
Muchas gracias.
-- 
--
Saludos cordiales.
Pablo.

Si lo reenvías, ten la precaución de borrar los datos de procedencia que
encabezarían tu reenvío – empezando por mi dirección de correo
electrónico - . Coloca siempre las direcciones de tus contactos en el
campo <CCO> para que viajen discretas, no en el campo <Para> ni en
el<CC>. De esa forma nadie que lo reciba tendrá constancia de las señas
de los demás destinatarios a los que también se remite. Todo ello a fin
de evitar que nadie se aproveche de todas las direcciones que se van
acumulando al pasar de buzón a buzón para el lanzamiento de correo
basura y otras indeseadas lindezas. Aparte claro está de garantizar la
privacidad.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.