Re: [gx-l] Descarga con httpResponse

Yo lo uso mucho en VFP, no en java. Te paso un ejemplo con el "Hola Mundo" de Google Chart:

&fileName = 'c:\zTmp\tmp001.png'

&httpClnt.ProxyServerHost = '192.168.123.1'
&httpClnt.ProxyServerPort = 8080

&httpClnt.Host = 'chart.apis.google.com'
&httpClnt.AddHeader('Connection','Keep-Alive, TE')
&httpClnt.AddHeader('TE', 'trailers, deflate, gzip, compress')
&httpClnt.AddHeader('User-Agent', 'RPT-HTTPClient/0.3-3I')
&httpClnt.AddHeader('Accept-Encoding', 'deflate, gzip, x-gzip, compress, x-compress')

&cURL = '/chart?cht=p3&chd=t:60,40&chs=250x100&chl=Hello|World'
&httpClnt.Execute('GET',&cURL)

If &HttpClnt.ErrCode <> 0
    &httpErr = 'HTTPClient:'+trim(str(&HttpClnt.ErrCode))+' '+ trim( &HttpClnt.ErrDescription) + ' '+trim( &HttpClnt.ReasonLine)
Else
    &httpErr = 'HTTPClient: OK'
    // Msg(&httpClnt.ToString())
    &httpClnt.ToFile(&fileName)
    &errOD = OpenDocument(&fileName)
    &bmp = Loadbitmap(&fileName)
Endif

Los nombres de las variables son bastante descriptivos de sus tipos de datos. Tengo un PROXY en el medio, quizas tengas que comentar esas lineas.

Bueno, cualquier duda por aca estamos.

Slds






2010/5/10 Nahuel Garcia <ngarcia@saico.com.uy>
Gracias por sus respuestas:
Bernardo: Gracias por la sugerencia, ya me he topado con eso.
Leandro: Desconocía que se pudiese hacer con HTTPClient. Tienes algún ejemplo? 

Sent: Monday, May 10, 2010 10:31 AM
Subject: Re: [gx-l] Descarga con httpResponse

Hola Nahuel, por que HTTPResponse y no HTTPClient?


2010/5/10 Bernardo López <bernardolg@gmail.com>
Saludos.
No he trabajado con el AddString.
Sólo te recomiendo que te asegures que &arch no lleve caracteres
especiales ni espacios en blanco, sólo los caracteres básicos
soportados en URLs.

El día 10 de mayo de 2010 08:20, Nahuel Garcia <ngarcia@saico.com.uy> escribió:
> Buenos días: Estoy intentando, mediante &httpResponse hacer download de un
> archivo. En la variable &contenido van las líneas del archivo. Pero estoy
> teniendo dos problemas.
> 1) Me sustituye tildes, ñ, etc.
> 2) Me aparece esto: javax.servlet.ServletException:
> java.lang.IllegalArgumentException: URLDecoder: Incomplete trailing escape
> (%) pattern. En la variable &contenido no hay ningún "%".
> Esto utilizo para hacer la descarga:
>
> &httpresponse.AddHeader('Content-Type', 'text/html')
> &httpresponse.AddHeader('Content-Disposition', "attachment; filename=" +
> &arch)
> &httpresponse.AddString(&contenido)
>
> Alguna idea de como solucionar esto. Se que se puede grabar un archivo en el
> servidor web y utilizar &httpresponse.AddFile(), pero la idea es no generar
> un archivo en el servidor web.
> Genexus x ev1 u2 generando java web.
> Gracias.
>
> Nahuel Garcia
> SAICO Sistemas srl



--
ßernardo E. López García.
-----------------------------------
¡Olmo, dame peras!

-----------------------------------------
Para Suscribirse/Desuscribirse:
http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,1
Por consultas owner-gx-l@gxtech.com.uy



--
I get paid to support Windows, I use Linux to get work done.



Se certificó que el correo entrante no contiene virus.
Comprobada por AVG - www.avg.es
Versión: 9.0.819 / Base de datos de virus: 271.1.1/2865 - Fecha de la versión: 05/10/10 03:26:00



--
I get paid to support Windows, I use Linux to get work done.

--
Has recibido este mensaje porque estás suscrito al grupo "GeneXus" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a genexus@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a genexus+unsubscribe@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/genexus?hl=es.

2 Response to "Re: [gx-l] Descarga con httpResponse"

  1. Unknown says:
    29 de agosto de 2013, 7:23

    Buenos dias:

    Como puedo controlar el siguiente error

    El proceso no puede obtener acceso al archivo 'D:\KB_GenexusX\CoopLinea\CSharpModel\web\Reportes\ADMIN_REPUSUSMO_29082013.TXT' porque está siendo utilizado en otro proceso.

    el archivo se esta generando de la siguiente forma.

    &HttpResponse.AddHeader('Content-Type', &contenttype)
    &HttpResponse.AddHeader('Content-Disposition',"attachment;filename="+&NomArchivo)
    &HttpResponse.AddFile(&RutArchivo)

    Gracias por su colabiración.

  2. Juan Pablo says:
    20 de mayo de 2021, 8:25

    Hola comunidad. Recien estoy usando HttpResponse para descarga de archivos desde mi sitio pero me encuentro con un inconveniente.

    Acceso denegado a la ruta de acceso..

    Si la ruta la pongo desde C:\... si realiza la descarga pero si le pongo desde una ruta que tengo en Red ejemplo \\Imagenes.. es donde me voto el error.

    La unidad de red esta publica y no encuentro donde esta el problema.

    Agradezco de antemano su me pudieran dar alguna recomencación.
    mi correo: desarrollo@gar.com.mx

Publicar un comentario