On Fri, May 2, 2008 at 4:15 AM, arne anka <dojo@...> wrote:
> hi,
> after some research regarding pretty urls i found both
> http://blogs.steeplesoft.com/jsf-phaselisteners-and-get-requests/ > and
> http://wiki.apache.org/myfaces/InvokingJsfPagesWithStandardUrls >
> i tried the second approach first (servlet) and instead of invoking the
> NavigationHandler i did a forward:
>
> req.getRequestDispatcher(facesContext.getViewRoot().getViewId()).forward(req,
> res);
>
> the page is rendered wonderfully, the url is intact -- all seems nice,
> until ...
> i got an <h:collapsiblePanel> on my page -- and clicking the panel to
> expand it changes the url.
> instead of my nice url now there's the url of the viewId i render inside my
> servlet.
>
> with the phaselistener it's mostly the same -- only the url is now the
> pseudo-directory and the viewId appended which results in an error ...
>
> pretty url:
> http://foo.bar/document/doc001 >
> wrong url after servlet:
> http://foo.bar/presentation/presentation.jsf >
> wrong url after phaselistener:
> http://foo.bar/document/presentation/presentation.jsf >
> so, is there a way to force the prettified url even inside the rendered
> page?
> maybe some string replacement in a phaselistener?
>
> i hop, i could make my problem clear.
>
> thanks
>