[Zope] Very long URLs

Thomas B. Passin tpassin@mitretek.org
Thu, 5 Jul 2001 10:41:17 -0400


[<belen@netcom.no>]

>
> Thanks a lot for your help.
> I have tried your method but it does not  seem to work or I was unable
> to make it work :(
> I thought that REQUEST.form it is only used if the request was
> initialised by submittiong a form. But this long Url is created via a
> link not a form(get).
>
> Without passing nav1/nav2/qu1/qu2 to the DTMLDocument  called "Result"
> I try to <dtml-var "REQUEST.form['nav2']">. Nothing renders.
>
> Did you mean something else? Thanks again

Hmm, it should work, and I can do this using Cold Fusion (I haven't tried it
without a form in Zope yet, though).  When a form is submitted using GET,
the form variables are appended to the url exactly as you have shown, and
they should be available.

I suggest this:  try something ***simple*** first.  So create a page that
has a form, and use dtml instructions to look at the url so you can verify
that the variables were passed to the page.  Make some dtml page or method
that gives you a visible response to the form, showing the value of the
variable that you sent (I like to have the response open another window so I
can tell just what happened).  Then paste that url into your browser so as
to ask for the response without actually having any form on a page.

You should see the same response.  If this works, append another variable to
the url and see if you get both of them.

If this works, then check the exact syntax of your long url.  This will be
hard because it is so complex.  Compare each part to the short url example
that works.

Also, have Zope display the entire form (<dtml "REQUEST.form">) - every dtml
page has a REQUEST object and see if any part of you data gets into the
form.

At this point, you should have a good idea where something is not working.
If you haven't seen an approach to solving the problem, then post to the
list again.

Seems to me that there are two main possibilities:

1) Your computer-generated long url has some syntax error in it.
2) The url is too long for some buffer.

2) seems unlikely, but you never know.

Good luck,

Tom P