pam, el 6 de noviembre a las 16:15 me escribiste:
> Hola, queria saber si alguno utilizo nusoap para webservice, yo recien las
> estoy entendiendo y no consegui mucha informacion util ya que la mayoria
> es muy basico.
Yo lo usé pero para hacer cosas simples y modificando un código ya
existente. Tenía tipos "complejos", te paso un ejemplo:
require_once 'lib/nusoap.php';
require_once 'lib/db.php';
// Configuración del server SOAP
$server = new soap_server();
$server->configureWSDL(SOAP_SERVICE_NAME, SOAP_NAMESPACE);
// Tipos de datos propios
$server->wsdl->addComplexType('Obra', 'complexType', 'struct', 'all', '',
array(
'obraId' => array('name' => 'obraId', 'type' => 'xsd:int'),
'imagen' => array('name' => 'imagen', 'type' => 'xsd:string'),
'titulo' => array('name' => 'titulo', 'type' => 'xsd:string'),
'anio' => array('name' => 'anio', 'type' => 'xsd:int'),
'dimension' => array('name' => 'dimension', 'type' => 'xsd:string'),
'tecnica' => array('name' => 'tecnica', 'type' => 'xsd:string'),
'autorId' => array('name' => 'autorId', 'type' => 'xsd:int'),
'muestraId' => array('name' => 'muestraId', 'type' => 'xsd:int'),
'auxiliar' => array('name' => 'auxiliar', 'type' => 'xsd:string'),
)
);
$server->wsdl->addComplexType('Obras', 'complexType', 'array', '',
'SOAP-ENC:Array', array(),
array(array('ref' => 'SOAP-ENC:arrayType', 'wsdl:arrayType' =>
'tns:Obra[]')),
'tns:Obra');
// .. mas
// una funcion que usa el tipo complejo
$server->register('GetObrasxMuestra',
array('sala' => 'xsd:int'),
array('return' => 'tns:Obras'));
function GetObrasxMuestra($sala)
{
$db = db();
$obras = obras($db, intval($sala));
close($db);
foreach ($obras as $i => $obra)
{
$obras[$i]['obraId'] = $obra['id'];
$obras[$i]['dimension'] = $obra['dimensiones'];
$obras[$i]['autorId'] = $obra['autor_id'];
$obras[$i]['muestraId'] = $obra['muestra_id'];
}
return $obras;
}
// mas
// Procesar request SOAP utilizando datos de POST
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
También había encontrado en google algún tutorial que me sirvió.
--
LUCA - Leandro Lucarella - Usando Debian GNU/Linux Sid - GNU Generation
------------------------------------------------------------------------
E-Mail / JID: [EMAIL PROTECTED]
GPG Fingerprint: D9E1 4545 0F4B 7928 E82C 375D 4B02 0FE0 B08B 4FB2
GPG Key: gpg --keyserver pks.lugmen.org.ar --recv-keys B08B4FB2
------------------------------------------------------------------------
La terapia no sirve: es mucho mejor pagar para hacer las perversiones
que para contarlas.
-- Alberto Giordano (filósofo estilista)
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion