Hola a todos, necesito vuestras ayuda
Espero que sea el lugar correcto
El caso es que tengo que conectar a un webservice SOAP, usando PHP, y no hay manera... :(
Me han dado la ubicación, que es algo como esto:
http://xxx/xxx/Servicios?wsdl (pongo las xxx por omitir la url real), de la cual tengo un usuario y una contraseña.
Han implementado un método, llamado selectLectores y me dicen que las request son de este tipo:
Código:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:impl="http://xxxxxxxxx">
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>miusuario</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">mipassword</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<impl:selectLectores>
<arg0>
<!--Obligatorio:-->
<centro>51000286</centro>
<!--Optional:-->
<codigoLector>14103</codigoLector>
</arg0>
</impl:selectLectores>
</soapenv:Body>
</soapenv:Envelope>
El caso es que me intento conectar con php con el siguiente código:
Cita: $servicio="http://xxx/xxx/Servicios?wsdl";
$parametros=array();
$parametros['centro']=51000286;
$validacion = array(
'Username' => 'miusuario',
'Password' => 'mipassword'
);
$client = new SoapClient($servicio,$validacion);
$result = $client->selectLectores($parametros);
Pero no me funciona, me devuelve el siguiente error:
500 | Internal Server Error | SoapFault
java.lang.NullPointerException
¿Alguien sabría decirme que estoy haciendo mal, o como debo hacerlo?
Muchas gracias
Un saludo