users@glassfish.java.net

Re: URL Changing Despite No Redirect Tag in JSF Navigation Rules

From: Ryan Lubke <Ryan.Lubke_at_Sun.COM>
Date: Tue, 22 Jan 2008 14:14:33 -0800

glassfish_at_javadesktop.org wrote:
> Ryan,
>
> As far as I understand it, the only ways that a URL can change is if the action in the form is different than the current page, or a redirect is sent. In both cases, the client browser is requesting a different URL. Since neither of these are the case, I am confused as to how the URL change will occur with a forward.
>
> I took the following excerpt from Oracle's documentation on navigation cases (http://www.oracle.com/webapps/online-help/jdeveloper/10.1.3?topic=sf_apf_navcases_html). If I understand correctly, it seems to support what I am saying:
>
> [i]"Defining a navigation case as redirect causes JSF to send a redirect response that asks the browser to request the required new view. The alternative, where the navigation case is not defined as redirect, the required view is simply rendered as the response to the current request."
>
In the non-navigation case, the address bar will reflect the URL of the
form of the most recent post.

Consider:

Request 1: Page1.jsp (action URL refers to Page1.jsp and address bar
shows Page1.jsp)
  - address bar and action URL are in sync as this was an initial request
  - submit action that navigations to Page2.jsp
Post-Back 1: Page2.jsp (action URL refers to Page2.jsp and address bar
shows Page1.jsp)
 - address bar reflects the action URL of the page at the start of the
post-back
 - submit action that navigates to Page1.jsp
Post-Back 2: Page1.jsp (action URL refers to Page1.jsp and address bar
shows Page2.jsp)
 - address bar reflects the action URL of the page at the start of
post-back

I think Oracle's documentation is incomplete. If the navigation rule
goes to/from the same view, then yes
I could see the address bar never changing as the action URL never changes.
> "A navigation case defined as redirect means that for the user, the URL shown in the browser address field is adjusted to show the URL for the new view. [b]Using direct rendering, the address field is not updated for the user[/b]. Direct rendering can be faster than redirection."[/i]
>
> Am I misunderstanding what Oracle is saying here? This seems to state that a URL change will only occur if the client requests a new URL and that a forward will not do this.
>
> Thanks,
> Kurzweil4
> [Message sent by forum member 'kurzweil4' (kurzweil4)]
>
> http://forums.java.net/jive/thread.jspa?messageID=255015
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
>