Thanks to all of you.
Dirk
2006/3/10, Igor Vaynberg <
[EMAIL PROTECTED]>:
solution would be for you to open those windows in different pagemaps.
ala: page.forName(String.valueOf(Math.random());
this will cause more session state to be kept, but i dont see any other solution. maybe a PageMap eviction strategy :)
-IgorOn 3/10/06, Dirk Markert < [EMAIL PROTECTED]> wrote:Now that we have an explanation, what's the solution?2006/3/10, Johan Compagner < [EMAIL PROTECTED]>:ahh yes
thats logical.
Because you use the same pagemap.
and a pagemap has a browser stack
so if you open P1 on pagemap X
then P2 on pagemap X
and you click again on P1 then we think you did a back button to P1
and then we remove P2 from the stack because if this was a browser it wasn't accessible anymore.
johanOn 3/10/06, Dirk Markert < [EMAIL PROTECTED]> wrote:I try to explain. Given the above code with homepage H und page class P.We have the following steps:1. in my homepage I click on the action link giving me a new browser window for classinstance P1 of class P2. in my homepage I click again on the action link giving me a new browser window for classinstance P2 of class P3. in P1 I click on the link4. in P2 I click on the link and then I get the standard wicket page expired pageAs far as I can see, wicket is removing version 0 of page P2 from the page map in step 3. when PageMap.access() is called.I hope I could make it clear.Dirk
2006/3/10, Johan Compagner <[EMAIL PROTECTED]>:then i need a complete example to see what really does happen or what exactly goes wrong.
At what exact time you get and error and what exactly is that error?
On 3/10/06, Dirk Markert <[EMAIL PROTECTED] > wrote:I am using cvs head.I do not close any window P1 or P2.My homepage constructor in full glory:public Home() {
Link actionLink = new Link("start") {
public void onClick() {
setResponsePage(new P());
}
};
PopupSettings p = new PopupSettings( PageMap.forName("popup-page-map"),
PopupSettings.LOCATION_BAR );
p.setWidth(600).setHeight(600);
actionLink.setPopupSettings(p);add(actionLink);
}
My class P is basically something like:.....Link link = new Link("link", new Model(..)) {public void onClick() {
changeInternalState(getModelObject());
}......
Dirk2006/3/10, Johan Compagner < [EMAIL PROTECTED] >:ahh which build are you using?
Because i think this is the problem i fixed and i believe it didn't make it into 1.2b1
The popup closing did remove to much.
Don't know exactly if that is the case for you then i have to see more code.
that link that you give those popupsettings to is that a link with an onClick() {setResponsePage(newPage)} ?Yes, see above.
On 3/10/06, Dirk Markert < [EMAIL PROTECTED] > wrote:I have one homepage H with one Link named actionLink:PopupSettings p = new PopupSettings(PageMap.forName("popup-page-map"),
PopupSettings.LOCATION_BAR );
p.setWidth(600).setHeight(600);
actionLink.setPopupSettings(p);In my homepage I click two times on this link, giving me 2 browser windows P1 and P2.Dirk2006/3/10, Martijn Dashorst <[EMAIL PROTECTED]>:Ah,
you have 2 browsers pointing to the same session?
Then you should use a different pagemap for each browser.
Martijn
On 3/10/06, Dirk Markert <[EMAIL PROTECTED]> wrote:
>
> Johan,
>
> thank you for your answer. That's what I am doing right now.
>
> To be exact, I am calling:
>
> setResponsePage(new P(newState));
>
> And then I am having two instances of P, page P1 and page P2, after
> the link is clicked two times.
>
> I am getting the error later with the described sequence.
>
> Dirk
>
> 2006/3/10, Johan Compagner < [EMAIL PROTECTED]>:
> > Dirk,
> >
> > just create the pages with the new keyword of java
> >
> > so in a link or submit just do:
> >
> > setResponsePage(new P1(newState))
> >
> > johan
> >
> >
> >
> >
> > On 3/10/06, Dirk Markert < [EMAIL PROTECTED] > wrote:
> > >
> > >
> > > I am using latest anon cvs head.
> > >
> > > I have a home page H with a popuplink opening page P. It is possible
> > > to have more than one page P. A link on P leads to P, it only changes
> > > internal page state. Thus we can have sequences like:
> > >
> > > H -----> P1 ----> P1 -----> P1 ........
> > > +------> P2 ----> P2 -----> P2 ........
> > >
> > > P1 and P2 have different internal states, because the page constructor
> > > takes the new internal state as an argument.
> > >
> > > The sequence H-->P1, H-->P2, P1-->P1, P2--> shows the expired page.
> > > (In step 3 version 0 of P2 is removed from the wickets page map)
> > >
> > > How can I have multiple instances of page P?
> > >
> > >
> > >
> > > Dirk
> > >
> >
> >
>
>
--
Nominate Wicket for the SourceForge.net's Choice awards!
http://www.wilsonresearch.com/2006/ostgawards06/ostgawards4.php
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmdlnk&kid0944&bid$1720&dat1642
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user
