ok, i did the same magic in my coding strategy and it works. in new tabs the url now looks like http://localhost/page/SomePage?wicket:bookmarkablePage=wicket-0:com.package.SomePage
can someone explain the mechanism to me? also, why should i take care of this and not WebRequestCodingStrategy? thanx, ittay Ittay Dror wrote: > well, this is the code in WebRequestCodingStrategy: > public final CharSequence encode(final RequestCycle requestCycle, > final IRequestTarget requestTarget) > { > // first check whether the target was mounted > CharSequence path = pathForTarget(requestTarget); > if (path != null) > { > CharSequence prefix = urlPrefix(requestCycle); > final AppendingStringBuffer buffer = new > AppendingStringBuffer(prefix.length() > + path.length()); > buffer.append(prefix); > buffer.append(path); > return > requestCycle.getOriginalResponse().encodeURL(buffer); > } > .... > > the page (target) is indeed mounted, so pathForTarget goes to the encoding > strategy to encode the path. in case the target was not mounted, it would > have encoded the url itself (in my case, the target is > IBookmarkablePageRequestTarget) > > the code there is less than trivial, should i copy & paste? can i reference > it somehow? > > > ittay > > > Matej Knopp wrote: >> Hmm.. The problem with this kind of bugs is that it's very difficult to >> reproduce. >> >> IMHO The problem is in this line: >> else {document.location.href = >> '/page/SomePage;jsessionid=E43E09C7B61190F3C8C5E98CB988F21F?';} >> >> The url should contain pagemap name (something like wicket-1). >> >> In wicket-1.2 the url is built in PageMapChecker#renderHead >> (WebPage.java line 388 - >> IBookmarkablePageRequestTarget current = >> (IBookmarkablePageRequestTarget)target; >> BookmarkablePageRequestTarget redirect = new >> BookmarkablePageRequestTarget( >> getSession().createAutoPageMapName(), >> current.getPageClass(), current.getPageParameters()); >> url = cycle.urlFor(redirect); >> ) >> >> I wonder why the generated url doesn't contain the pageMap name. >> >> -Matej >> >> Ittay Dror wrote: >>> further investigation shows that for IE and openning new windows, it works >>> fine - a PageMap instance is created, and the page loads fine. >>> >>> i've also started firefox with a new profile (no extensions), to make sure >>> it's not extension related, and no, it happens there also, and also when i >>> open a new window instead of new tab. it seems to be related to differences >>> in cookie (session) handling between firefox and IE. >>> >>> ittay >>> >>> Ittay Dror wrote: >>>> Hi, >>>> >>>> I'm using firefox. when i duplicate a tab, the tab reloads in an infinite >>>> loop. >>>> >>>> this is the reason: >>>> <script type="text/javascript"><!--//--><![CDATA[//><!-- >>>> var pagemapcookie = getWicketCookie('pm-nullwicket'); >>>> if(!pagemapcookie && pagemapcookie != >>>> '1'){setWicketCookie('pm-nullwicket',1);} >>>> else {document.location.href = >>>> '/page/SomePage;jsessionid=E43E09C7B61190F3C8C5E98CB988F21F?';} >>>> >>>> //--><!]]></script> >>>> >>>> </head> >>>> <body onunload="deleteWicketCookie('pm-nullwicket');"> >>>> >>>> >>>> what happens is that the pagemapcookie is there when the page is rendered, >>>> because the previous page was not unloaded, so the document's href is >>>> changed to itself. of course, when the page loads, the cookie is still 1, >>>> so the loop continues. the same will happen if i just open a new tab and >>>> load the same url. >>>> >>>> what gives? >>>> >>>> >>>> also, the code that writes this script is WebPage.PageMapChecker the >>>> comment in the code is: >>>> /** >>>> * Tries to determine whether this page was opened in a new window or >>>> tab. >>>> * If it is (and this checker were able to recognize that), a new page >>>> map >>>> * is created for this page instance, so that it will start using it's >>>> own >>>> * history in sync with the browser window or tab. >>>> */ >>>> >>>> i've tried to debug this, but it doesn't look like a new PageMap is >>>> created (i don't use it, so the PageMap instance is the default one). so >>>> it seems i *don't* get a history per tab. >>>> >>>> can/should i remove the AutomaticMultiWindowSupport setting? >>>> >>>> thanx, >>>> ittay >> >> >> _______________________________________________ >> Wicket-user mailing list >> Wicket-user@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wicket-user >> > > -- =================================== Ittay Dror, Chief architect, openQRM TL, R&D, Qlusters Inc. [EMAIL PROTECTED] +972-3-6081994 Fax: +972-3-6081841 http://www.openQRM.org - Keeps your Data-Center Up and Running _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user