Re: ASERVE client and pages larger than ARRAY-TOTAL-SIZE-LIMIT

Brendan Burns <[email protected]> Wed, 16 Jul 2003 11:53:42 -0400
Newsgroups gmane.lisp.open-source.franz
Message-ID <[email protected]>
Hey there,
I've found aserve's htmlgen functionality is a little annoying to use, 
so I developed the code to allow you to inline Lisp in HTML  eg:

<body>
1 + 2 = <% (+ 1 2) %>
</body>

If you (or anyone else) is interested in the code, let me know.

--brendan

On Wednesday, July 16, 2003, at 07:02 AM, MARTINS, Maria Cleci wrote:

> Hi everyone!
>
> I am new to Lisp and I would like some help on how to produce webpages 
> using
> lisp server. I read the tutorial on dynamic HTML, but I am still 
> confused.
> Please let me know of any references that gives one basic information 
> on how
> to build a web project using lisp and Allegro server.
>
> Thanks,
>
> Maria
>
>
> -----Original Message-----
> From: Andrew Philpot
> To: [email protected]
> Cc: [email protected]
> Sent: 7/15/2003 6:15 PM
> Subject: ASERVE client and pages larger than ARRAY-TOTAL-SIZE-LIMIT
>
>
> As well as the server functionality of ASERVE, I also find that
> NET.ASERVE.CLIENT::DO-HTTP-REQUEST, i.e., the client side, is very
> useful to me.
>
> I have run into a problem and am not sure how to proceed.
>
> Since DO-HTTP-REQUEST returns a string containing the contents, I can
> run afoul of ARRAY-TOTAL-SIZE-LIMIT.  This limits me to documents no
> larger that 16MB (in my ACL 6.2 Linux).  I'm now dealing with database
> extracts obtained via HTTP in XML format, and they can easily exceed
> this limit.
>
> My first inclination is to (locally) patch this routine to return a
> list (or vector) of strings each adhering to the limit.  It seems
> pretty ugly to me.
>
> Has anyone encountered this problem with ASERVE, or a similar problem
> in another set of circumstances and care to offer a workaround?
>
> Thanks,
> Andrew
>
> CL-USER(36): (net.aserve.client::do-http-request
> "http://altamira.isi.edu/large.html")
> Error: The size of this array 17001732 exceeds array-total-size-limit,
>        16777216 or is negative
>   [condition type: SIMPLE-ERROR]
>
> Restart actions (select using :continue):
>  0: Return to Top Level (an "abort" restart).
>  1: Abort entirely from this process.
> [1] CL-USER(37): array-total-size-limit
> 16777216
> [1] CL-USER(38): (excl::shell "ls -lga /var/www/html/large.html")
> -rw-r--rw-    1 philpot  simsgrp  17001732 Jul 15 10:00
> /var/www/html/large.html
> 0
> [1] CL-USER(41): net.aserve::*aserve-version*
> (1 2 27)
> .