Fatal error: Uncaught SoapFault exception: [Client] SOAP-ERROR: Encoding: object hasn't 'Sdt_coleccionretornoitemsagrupacion' property in /var/www/sitios/webservices/Diego.php:129 Stack trace: #0 /var/www/sitios/webservices/Diego.php(129): SoapClient->__soapCall('Execute', Array) #1 {main} thrown in /var/www/sitios/webservices/Diego.php on line 129
Yo tengo el siguiente código:
Código:
Y en el soft que utilizo para que me devuelva el Cliente para testear si me funciona, estas son las lineas. echo 'SEGUNDO XML------------------------------' . '<br/><br/>'; $objClienteSOAP2 = new SoapClient('http://192.168.1.12:8080/geotributosval/servlet/agen?wsdl'); //$newRecibos = json_decode($recibos, true); $params2 = array('Ipmaquina'=>'127.0.0.1', 'Concod'=>'1', 'Vartribmen1'=>'?', 'Vartribmen2'=>'?', 'Vartribmen3'=>'?', 'coleccionretornoitemsagrupacion'=>array('IdTramite'=>1008,array('IdTributo'=>802,'NombreTributo'=>'CERTIFICADO','UnidadCodigo'=>1, 'UnidadNombre'=>'PESOS','ValorTributo'=>256.00),'Cantidad'=>3)); $objRespuesta2 = $objClienteSOAP2->__soapCall('Execute', array($params2)); // var_dump($objClienteSOAP2->__getFunctions()); echo '<pre>'; print_r($objRespuesta2); echo '</pre>';
Código:
El tema, es que no estoy logrando pasar la colección es decir el array dentro del array de los parámetros. Será que se les ocurre donde puedo estar cometiendo el error o si me está faltando algo?.<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:geot="GeoTribUy"> <soapenv:Header/> <soapenv:Body> <geot:GenWs14GenerarCobroVarios.Execute> <geot:Ipmaquina>imstimbres</geot:Ipmaquina> <geot:Concod>1</geot:Concod> <geot:Vartribmen1>?</geot:Vartribmen1> <geot:Vartribmen2>?</geot:Vartribmen2> <geot:Vartribmen3>?</geot:Vartribmen3> <geot:Sdt_coleccionretornoitemsagrupacion> <geot:SDT_ColeccionRetornoItemsAgrupacion.SDT_ColeccionRetornoItemsAgrupacionItem> <geot:IdTramite>1008</geot:IdTramite> <geot:ColeccionRetornoItemsTributos> <geot:SDT_ColeccionRetornoItemsTributos.SDT_ColeccionRetornoItemsTributosItem> <geot:IdTributo>802</geot:IdTributo> <geot:NombreTributo>CERTIFICADO</geot:NombreTributo> <geot:UnidadCodigo>1</geot:UnidadCodigo> <geot:UnidadNombre>PESOS</geot:UnidadNombre> <geot:ValorTributo>256.00</geot:ValorTributo> <geot:Cantidad>3</geot:Cantidad> <geot:SubTotal>?</geot:SubTotal> </geot:SDT_ColeccionRetornoItemsTributos.SDT_ColeccionRetornoItemsTributosItem> </geot:ColeccionRetornoItemsTributos> </geot:SDT_ColeccionRetornoItemsAgrupacion.SDT_ColeccionRetornoItemsAgrupacionItem> </geot:Sdt_coleccionretornoitemsagrupacion> </geot:GenWs14GenerarCobroVarios.Execute> </soapenv:Body> </soapenv:Envelope>
Agradezco cualquier ayuda.
Saludos.