Have a look at getActionURL. You can create your own ViewHandlerWrapper and create your own action URLs for the passed in view IDs:
http://tinyurl.com/3jnv4w -Andrew On Fri, May 2, 2008 at 4:15 AM, arne anka <[EMAIL PROTECTED]> 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 >

