Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/04/2011, 06:38
TragedyCL
 
Fecha de Ingreso: enero-2010
Mensajes: 39
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: nuSOAP + WS Security = Undeclared namespace prefix "wsse"

Nadie sabe?

Adjunto mi codigo por si sirve de algo:

Código PHP:
Ver original
  1. <?
  2. require_once('lib/nusoap.php');
  3.  
  4. list($usec, $sec) = explode(' ', microtime());
  5. srand((float) $sec + ((float) $usec * 100000));
  6.  
  7. $username = "usuario";
  8. $secret = "password";
  9.  
  10. function get_header($username, $secret)
  11. {
  12.     $nonce = md5(rand());
  13.     $created = time();
  14.     $combo_string = $nonce . $created . $secret;
  15.     $sha1_string = sha1($combo_string);
  16.     $password = base64_encode($sha1_string);
  17.    
  18.     $headers="<UsernameToken><Username>".$username."</Username><Password Type='PasswordDigest'>".$password."</Password><wsse:Nonce>".$nonce."</wsse:Nonce><Created>".$created."</Created></UsernameToken>";
  19.     return $headers;
  20. }
  21.  
  22. $client = new nusoap_client('direcciondelWS?wsdl', 'wsdl');
  23.  
  24. $client->soap_defencoding = 'UTF-8';
  25. $client->setHeaders(get_header($username, $secret));
  26.  
  27. if($err = $client->getError())
  28. {
  29.     echo "ERROR:".$err."\n";
  30.     exit();
  31. }
  32.  
  33. $client->call
  34.                         (
  35.                             'setMessage', // nombre de la funcion
  36.                             'array("args0" => "1")',
  37.                             'cl.saludnorte-alert.capacitacion'
  38.                         );
  39.  
  40. // Muestra los resultados
  41. echo '<h2>Cabecera</h2><pre>'. get_header($username, $secret) .'</pre>';
  42. echo '<h2>Request</h2><pre>'. htmlspecialchars($client->request, ENT_QUOTES) .'</pre>';
  43. echo '<h2>Response</h2><pre>'. htmlspecialchars($client->response, ENT_QUOTES) .'</pre>';
  44. echo '<h2>Debug</h2><pre>'. htmlspecialchars($client->debug_str, ENT_QUOTES) .'</pre>';
  45. ?>