Hi, sorry,those strategies show magic only if you have stateful page,else you will see the default behavior ie. wicket:interface information will be added to page url.
if the page is stateful(just changing statelessform to form in your case) you will see that wicket:interface information is removed from the url instead a number ie. page version is added , On Tue, Mar 9, 2010 at 9:30 PM, Neil Curzon <[email protected]> wrote: > Hi Vineet, > > Thanks for your reply. I tried changing our mount for our login page from: > > mountBookmarkablePage("/login", Login.class); > to > mount(new HybridUrlCodingStrategy("/login", Login.class)); > > but this had no effect on the URL generated for the action of the login > form > (which is on the Login.class page). It seems that these strategies deal > more > with how parameters for the page get put on the URL bar, not how > componentIds etc are put in links on that page. Or am I doing something > wrong? > > Thanks, > Neil > > On Tue, Mar 9, 2010 at 10:47 AM, vineet semwal > <[email protected]>wrote: > > > please try hybridurlcodingstrategy or mixedparamshybridurlcodingstrategy > > and > > see if it fits your need, > > > > > > On Tue, Mar 9, 2010 at 9:07 PM, Neil Curzon <[email protected]> > wrote: > > > > > Hi, users, > > > > > > We're trying to avoid wicket specific stuff showing up in our URL bar. > > The > > > client thinks that when the URL looks something like this: > > > login/wicket:interface/:2:componentId:loginForm::IFormSubmitListener:: > , > > it > > > kinda sucks and looks unprofessional. I find it hard to disagree.. I'd > > > rather have the URL look prettier. > > > > > > For most of the pages this has been no problem for us, we mount > > > bookmarkable > > > URLs for them and all is great. > > > > > > However, for the login page, we've been through several iterations: > > > > > > 1. We did the login form by AJAX, using an AjaxSubmitLink. This meant > > that > > > the wicket-specific URL was still in the html source, but was invisible > > to > > > the user. Issue: despite the fact that it's in a stateless form, AJAX > in > > > wicket seems to be stateful no matter what. This meant that the login > > page > > > could expire, which was no good. > > > > > > 2. I changed the AjaxSubmitLink to a SubmitLink. This succeeded in > making > > > our login stateless. However, the wickety URL that was hidden in the > AJAX > > > request now became visible to the user on a login failure. > > > > > > 3. I tried setting up the CryptedUrlWebRequestCodingStrategy. This > > > successfully managed to encrypt the resulting wicket specific URL to > > > ?x=a325u0234usdajfasdf, but the thing is, the login page now started > > > expiring again. The reason is that CryptedUrlWebRequestCodingStrategy > > uses > > > a > > > key stored in the session, which has the effect of making all stateless > > > links stateful again. > > > > > > Does anybody have a good way for a stateless login form that doesn't > show > > > wickety stuff in the URL bar? Thanks in advance for any help. > > > > > > Neil > > > > > > > > > > > -- > > regards, > > Vineet Semwal > > > -- regards, Vineet Semwal
