FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour MUY IMPORTANTE! USO DE SOAPCLIENT
Posts: 731
Joined: Fri Oct 07, 2005 07:42 AM
MUY IMPORTANTE! USO DE SOAPCLIENT
Posted: Fri Jun 06, 2008 08:04 AM

Dejo este anuncio para que tengáis en cuenta una cosa a la hora
de usar un cliente SOAP, en este caso , el del M$.

El uso de esta función ;
oSoapClient := CreateObject( "MSSOAP.SoapClient" )

implica que debéis de DESTRUIR esa variable ;

oSoapClient := NIL

Y por seguridad , llamar al recolector de basura, hb_gcAll( .T. )

El motivo principal es que xHarbour no libera esa memoria si no lo
hacéis de esta manera, y tenéis un programa 24h/365, haciendo peticiones
constantemente, os daréis cuenta que en menos de 30 minutos, tendréis
un uso de memoria de 2.5 iniciales hasta 200 Megas de RAM usadas.

Es más, podréis tumbar al servidor más potente ;-(
El programa estaba consumiendo 500Megas de RAM!!!.

Cada vez que recibo datos desde el clienteSoap, estos no son liberados
si no aplicáis los que os comento.

Gracias a Antonio Linares por brindarme su ayuda en estos momentos de desesperación ;-)

También a Luiz Culik por informarme también por donde mirar.

Saludos

Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: MUY IMPORTANTE! USO DE SOAPCLIENT
Posted: Thu Aug 02, 2012 07:26 PM

Hola Rafa

Necesito tu ayuda u orientacion, por lo que he leido en los foros eres una persona que maneja el soap,, tengo un xml que envio a un webservice, este a su vez me responde con un xml+un archivo adjunto, como puedo lograr traer ese archivo adjunto, agradeceria tu ayuda

elmo

Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 731
Joined: Fri Oct 07, 2005 07:42 AM
Re: MUY IMPORTANTE! USO DE SOAPCLIENT
Posted: Fri Aug 03, 2012 10:25 AM

Buenas desde mi lugar de descanso, osease, vacaciones ;-)

Lo primero de todo, supongo que tendrás la documentación sobre ello, si no, vas a tener que estar probando y probando cosas.
Por ejemplo, quizás , se me ocurre, que ese nodo, puede estar en base64, pues lo descodificas y lo guardas como si fuese un fichero del tipo
que esperes.

Vamos la idea es ;
1.- Cojo el contenido del nodo, uContent
2.- uContent , si esta en base64, le decodeamos, mírate el ejemplo en /harbour/tests/base64.prg
3.- Guarda el contenido de uContent, fcreate(), fwrite(), fclose(), por si acaso, no se si el memowrite() te pone un chr(26) que te puede romper el fichero.

Pero es raro, que no tengas ejemplos en otros lenguajes o en su defecto la documentación necesaria.

Todo esto es teoría, no me hagas mucho caso. ;-)

Saludos

Saludos

Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
Re: MUY IMPORTANTE! USO DE SOAPCLIENT
Posted: Fri Aug 03, 2012 10:33 AM

Gran detalle por tu parte poner este aviso en el foro.
Gracias :shock:

Continue the discussion