Hmmm... it seems there are two different ways of doing basically the same
thing:
1. Darren's current way:
   RunData.declareDirectResponse()
   RunData.getResponse().sendRedirect()
2. Building on Darren's previous way, I am doing this:
   RunData.setRedirectURI()
   RunData.setStatusCode()
   In your layout class (replacing VelocityOnlyTemplate), don't call
getOut()
   to generate output at the end, just return if a redirect URI is set.

Both of them seem to work; but #2 seems to be the one supported by the
Turbine
servlet itself, if I am understanding the code correctly. So, which is
preferable? Are they intended to be used in different ways, and if so when?

Vobis gratias ago,
<>< gary

-----Original Message-----
From: Darren Gilroy [mailto:[EMAIL PROTECTED]]
Sent: Thursday, February 07, 2002 11:23 AM
To: 'Turbine Users List'
Subject: RE: TemplateScreen.doRedirect()


I solved this with

RunData.declareDirectResponse()
RunData.getResponse().sendRedirect()

FYI & Thanks
-best-darr-

 -----Original Message-----
From:   Darren Gilroy [mailto:[EMAIL PROTECTED]]
Sent:   Thursday, February 07, 2002 7:35 AM
To:     'Turbine Users List'
Subject:        RE: TemplateScreen.doRedirect()

Gary -

Hey, I'm having trouble with RunData.setRedirectURI()  -- I'm calling
RunData.setStatusCode() as directed, and I am getting a 302 response, but
not with the URL that I specified in setRedirectURI.  I get
http://localhost:8180/app/servlet/app/tempalte/file.vm/x/2/redirected/true?j
sessionid= ...

I am calling the setRedirectURI from a screen class that is extended from
VelocitySecureScreen, in the doBuildTemplate() method.  Is that not a legal
place to call this method?  It is necessary to move it to an action or
something?

Thanks!
-best-darr-

 -----Original Message-----
From:   Gary Bisaga [mailto:[EMAIL PROTECTED]]
Sent:   Wednesday, February 06, 2002 3:19 PM
To:     Turbine Users List
Subject:        RE: TemplateScreen.doRedirect()

Dazza- found the answer. Look at TemplatePage - the doBuildAfterAction uses
TurbineTemplate converts the template name to a screen name if no screen
name is given. But is this really what you want to do?

Seems like though, upon further reflection, you might want to start the page
all over again (e.g. to give you a chance to change the layout etc.) and so
to do a real redirect (data.setRedirectURI). What's more, usually in these
kinds of situations I've found that a real redirect is safer because the
browser's URL line is now correct: instead of showing the old,
redirected-from URL, it will show the new, redirected-to one.

<>< gary

-----Original Message-----
From: Darren Gilroy [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, February 06, 2002 4:22 PM
To: Turbine Users List
Subject: TemplateScreen.doRedirect()


Hi -

I'm calling doRedirect() from my screen class, and It's not working how I
expected.  I hope somebody can adjust my expectations.

I expected doRedirect( data, templateName ) to load and run the screen class
that it would run if you called the template with
/app/servlet/app/template/something.vm

I see a doRedirect( data, screenName, templateName ) - How can I look up the
screenName to use based on the templateName, using the same logic that
Turbine normally does?

Or, do you recommend a data.setRedirectURI() instead? Or something else?

Thanks!
-best-darr-


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to