Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/12/2013, 09:26
Chimenea88
 
Fecha de Ingreso: diciembre-2013
Ubicación: Telde(Gran Canaria)
Mensajes: 3
Antigüedad: 12 años, 9 meses
Puntos: 0
Pregunta Conexión certificada nuSOAP

Saludos a todos.

Estoy intentando realizar una conexión vía nuSOAP, mediante https enviando un XML certificado.

Adjunto código:

Código PHP:
define("HOME_DIR", "url_home_dir");
define("SERVER", "url_server");
define("SOAP_ACTION","url_soap_action");

$nusoap = "0.9.5";
require_once(
'lib/nusoap.'.$nusoap.'/nusoap.php');

$sslkey  ="lib/key.pem";
$sslcert = "lib/certificate.pem";

$passphrase= "XXX";
$useCURL = 0;

$set_wsdl=(isset($_GET['wsdl'])?'?wsdl':"");

$wsdl = new wsdl(SERVER.$set_wsdl);
$client = new soapclient($wsdl.$set_wsdl, (!empty($set_wsdl)));
$client->setUseCurl(true);

$client->useHTTPPersistentConnection();
$client->decode_utf8 = 0;
$client->soap_defencoding = 'UTF-8'; 
$client->soap_version = '1.2';
$client->authtype = 'certificate';
$client->setCredentials("","","certificate", 
 array( 
   
"sslcertfile" => HOME_DIR.$sslcert, 
   
"sslkeyfile" => HOME_DIR.$sslkey, 
 
//"certpassword" => "", //OPTIONAL
   
"passphrase" => $passphrase, 
   
"verifypeer" => 0, //OPTIONAL 
   
"verifyhost" => 1 //OPTIONAL 
   
) 
 );

$req = file_get_contents('fichero_de_envio.xml');

$p_Regr = $client->send($req, SOAP_ACTION);

 
$err = $client->getError();
 if (
$err)
    echo 
"<br><br>Error al enviar: ". $client->getError();
 else 
    echo 
"<br><br>Peticion enviada: ".$client->request; 
Constantemente me aparece el siguiente error: no transport found, or selected transport is not yet supported!

¿Algún buen samaritano que sepa como solucionar este problema?

Gracias de antemano.