Hi all, There is indeed some ambiguity in the "redirectRef" property name as it indeed is used for resource creations as well (indicated in the Javadocs).
In order to clarify this, I've added a "locationRef" property and deprecated "redirectRef" in SVN trunk. I hope this sounds good to everyone, let me know otherwise. Best regards, Jerome > -----Message d'origine----- > De : Avi Flax [mailto:[EMAIL PROTECTED] > Envoyé : vendredi 29 juin 2007 17:49 > À : [email protected] > Objet : Re: form submission fails to redirect on success > > Thierry, > > Actually, I think setRedirectRef() (which in HTTP is expressed as a > "Location" response header) *is* appropriate when the Response Status > is SUCCESS_CREATED (HTTP: "201 Created"). It is used to indicate to > the client the URI of the newly created Resource. > > That's the current state, and it makes sense, but I think it may be > causing some confusion, because even though in HTTP both > SUCCESS_CREATED and the REDIRECTION_* statuses make use of the > "Location" header, it has different semantic meaning in the two > different cases; in the case of SUCCESS_CREATED it indicates the > Location (URI) of the newly created Resource, in the case of > REDIRECTION_*, it indicates the new Location (URI) of the original > resource. > > So, we may want to consider adding a new method for use in the > SUCCESS_CREATED case: instead of setRedirectRef(), perhaps it could be > something like setNewResourceRef() - and the two should probably be > mutually exclusive somehow, or they would collide and/or overwrite > each other. > > Avi > > -- > Avi Flax > Lead Technologist > arc90 | http://arc90.com > > On 6/29/07, Thierry Boileau <[EMAIL PROTECTED]> wrote: > > Hello Michael, > > > > after reading the spec, SUCCESS_CREATED shows that the > operation succeeds > > and allows you also to provide a representation with some > information about > > the new resource, including "a list of resource characteristics and > > location(s) from which the user or user agent can choose > the one most > > appropriate". I don't think it can be meant as a redirection. > > I think also that the redirecRef is only used when the status of the > > response is a redirection status (3xx). The main > explanation for this design > > choice is that there are several redirection status, and no > default one. > > > > best regards, > > Thierry Boileau > > > > > > > > On 6/28/07, Michael Vogel <[EMAIL PROTECTED]> wrote: > > > Hello, > > > > > > I'm new to using restlets and have been experimenting > with simple test > > > pages to make sure i understand how to use it (and so > that i can write > > > some examples to help my coworkers learn it). > > > > > > I wrote a simple form submission test that works, except that the > > > redirection after returning SUCCESS_CREATED doesn't > happen. I am under > > > the impression that setting > > getResponse().setRedirectRef(<some URL>); > > > sets the location header and redirects the browser to > whatever URL is > > > specified. > > > > > > If i send the state REDIRECTION_SEE_OTHER, it redirects correctly. > > > > > > From the HTTP spec, it appears that using REDIRECTION_SEE_OTHER to > > > redirect the client to a view of > > > the created item after a post is acceptable, so I'm going > with that > > > for now, but I thought SUCCESS_CREATED was supposed to do > that also. > > > > > > Am I incorrect in expecting it to redirect on SUCCESS_CREATED? > > > > > > thanks for your time, > > > > > > Michael > > > > > > >

