On Tue, Mar 20, 2012 at 5:42 PM, Igor Vaynberg <[email protected]> wrote:
> On Tue, Mar 20, 2012 at 8:28 AM, Martin Grigorov <[email protected]> wrote:
>> On Tue, Mar 20, 2012 at 5:20 PM, Igor Vaynberg <[email protected]> 
>> wrote:
>>> On Tue, Mar 20, 2012 at 1:07 AM, Martin Grigorov <[email protected]> 
>>> wrote:
>>>> On Tue, Mar 20, 2012 at 12:55 AM, Igor Vaynberg <[email protected]> 
>>>> wrote:
>>>>> indeed. we should check that the page pointed to by the id maps back
>>>>> to the mount, and create a new instance based on the mount if it
>>>>> doesnt. jira please.
>>>>
>>>> This is already the case, no need of a ticket for this. If there is no
>>>> ?5 then Wicket creates ?0 and shows it.
>>>
>>> this is not what i was talking about...
>>>
>>>> The "problem" Pointbreak actually mean is that userA may have opened
>>>> ?5 in his session, copy the url and give it to
>>>> userB, but userB also already have its own session and by chance he
>>>> also had reached ?5 and these two ?5s are
>>>> different because they may have different states for both users.
>>>
>>> not only are ?5 different, but they are entirely different pages.
>>>
>>> so user A goes to /foo, we redirect to /foo?0, they click around and
>>> end up on /foo?2
>>> user B goes to /bar, we redirect to /bar?0, they click around and end
>>> up on /bar?7
>>>
>>> now user A emails user B the /foo?2 link. when user B hits that link
>>> they end up going to a previous version of their *bar* page instead of
>>> some instance of /foo because we do not check the mount vs the page
>>> id, and whats worse we keep the mount in the url even though we are
>>> displaying a page that is not mounted.
>>
>> Ouch!
>>
>>>
>>> i guess this is why in 1.4 we dropped the mount from nonbookmarkable urls...
>>
>> I hope you don't mean that we have to redirect to wicket/page?0 from
>> the bookmarkable url that the user requested.
>
> no. we should redirect to wicket/page?x when the user navigates away
> from the mounted page.
>
> so i go to /bar which is BarPage and end up on /bar?0. click a link
> that does something to BarPage, so end up on /bar?1. click a link that
> takes me to FooPage, at this point since the page does not match the
> mount i should go to /wicket/page?3

Currently it works just as you described it. Or I don't understand you well.
A quickstart will make it more clear :-)

My "ouch" was for something else - userA sends foo?5, but userB's ?5
is for BarPage and current PageProvider will silently return BarPage's
version5. It wont be FooPage!

>
> -igor
>
>> It'd be better if we check the type of the stored page against the
>> type of the page that is mounted at this "bookmarkable" url and throw
>> PageExpiredException if they don't match.
>>
>>>
>>> -igor
>>>
>>>
>>>
>>>
>>>>
>>>> The confusing part here is "bookmarkable". Now imagine that there is
>>>> no ?pageId in the url. userA clicks several Ajax links to get to
>>>> version5 of that page and then copy/paste the url but userB will see
>>>> the initial state of the page, not version5 that userA actually meant.
>>>> So it seems only ?0 is actually "bookmarkable" for stateful pages.
>>>> Only in this case both users will see the same content (if there is no
>>>> special logic for user permissions involved).
>>>>
>>>> If userA wants to fully share his page with userB then he has to share
>>>> his session too, i.e. both ?5 and jessionid= has to be in the pasted
>>>> url. I don't recomment this!
>>>>
>>>> ?5 helps when the user refreshes the page in his current session. In
>>>> this case he will see the same content as before the refresh. In 1.4
>>>> he'd see the initial state of the page and will loose any state that
>>>> is not persisted so far.
>>>>
>>>>
>>>>>
>>>>> -igor
>>>>>
>>>>> On Mon, Mar 19, 2012 at 3:52 PM, Pointbreak
>>>>> <[email protected]> wrote:
>>>>>> It's a problem when users bookmark it. Because ...?5 this session is an
>>>>>> entirely other page as ...?5 in another session tomorrow.
>>>>>>
>>>>>> On Mon, Mar 19, 2012, at 11:53, Girts Ziemelis wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 2012-03-19 02:46, Paolo wrote:
>>>>>>> > I support you! I implemented class NoVersionMount thanks to pointbreak
>>>>>>> > in my MainApplication. And It will be my template for future app. But
>>>>>>> > to do it, I needed to understood the problem, check on google, read a
>>>>>>> > lot of pages, without found a solution, so post the question here, and
>>>>>>> > after 3 post, got a right reply for me. Why an wicket user have to do
>>>>>>> > all this???? Why not, wicket use the NoVersionMount as default Mount?
>>>>>>> > Like in wicket 1.4. And implement an VersionMount as an alternative
>>>>>>> > for developer?
>>>>>>> I actually like this change so far. I can finally tell, that my page is
>>>>>>> stetefull just by looking at the link and ask myself question - if I
>>>>>>> really care so much about the clean link for this page, may be it should
>>>>>>> be stateless in a first place?
>>>>>>>
>>>>>>> And why is ?0 such a big problem? It does not cause problems sending
>>>>>>> links.
>>>>>>> Is there any real proof of google indexing problems so far?
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail: [email protected]
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [email protected]
>>>>> For additional commands, e-mail: [email protected]
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Martin Grigorov
>>>> jWeekend
>>>> Training, Consulting, Development
>>>> http://jWeekend.com
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>>
>>
>>
>>
>> --
>> Martin Grigorov
>> jWeekend
>> Training, Consulting, Development
>> http://jWeekend.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to