Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-31 Thread Erik van Oosten
Ah, the wonders of Weblogic.

My first Wicket app runs on Weblogic. A big problem was that the
datasource connection fell away after some time of inactivity. We solved
it by letting Weblogic run a test query every x minutes. We also ran
into very long lasting queries. Where database optimizations didn't
help, we solved that by simply not allowing complex queries.

Anyway, you should never let the pagelock expire. Wicket 1.2.* blows up
on you. I guess this is still the case.

Regards,
 Erik.


Weaver, Scott wrote:
> I have just started encountering this issue with one of my Wicket apps.
> Seems to have cropped up now that I am using the 1.3 rc1 (will be moving
> to release this Friday), but this could wholly be coincidence.  What I
> have noticed is, for me at least, this only happens on my Weblogic
> servers (9.2) and not in my local dev environment running Jetty.  The
> Weblogic logs reveal that after manually stopping a page load or after a
> page timeout, threads go into a [STUCK] status and, I am theorizing,
> locking the pagemap indefinitely.
>
> Thanks,
> -scott
>
>   
>> -Original Message-
>> From: cemeterygate [mailto:[EMAIL PROTECTED]
>> Sent: Tuesday, January 29, 2008 10:51 AM
>> To: users@wicket.apache.org
>> Subject: Re: Pagemap null is still locked by blah exception, help!!
>> 
> why
>   
>> does wicket have to lock the pagemap
>>
>>
>> that's right, i am screwed anyway if request takes too long, but from
>> 
> the
>   
>> browser user decide to give up current search by click the stop button
>> 
> and
>   
>> fire a new search. Since the pagemap is still locked by previous
>> 
> request,
>   
>> the second request will have to wait. sounds like i will end up handle
>> this
>> senario by pulling. is it possible to have a page that's not single
>> 
> thread
>   
>> model? Can we have two interface, such as SingleThreadPage, and
>> ConcurrentThreadPage?
>>
>>
>> igor.vaynberg wrote:
>> 
>>> yeah, if it takes a while the browser will timeout and you are
>>>   
> screwed
>   
>>> anyways...
>>>
>>> what do you mean they cant start a new search? you mean they no
>>>   
> longer
>   
>>> for the results of the currently running search and just press the
>>> search button again?
>>>
>>> if they would open a new tab with the search page, and you had
>>> automultiwindowsupport option enabled that new opened page would be
>>> created in a new pagemap, and so you wouldnt have a locking
>>>   
> problem...
>   
>>> -igor
>>>
>>>
>>> On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]>
>>>   
> wrote:
>   
>>>> shared resources are not synced thats one way of going round it.
>>>>
>>>> the other way is as igor describes. do the search in a seperate
>>>> 
> thread.
>   
>>>> If it really takes that long then you do know that browsers also
>>>> 
> can
>   
>> just
>> 
>>>> time out after they don't get anything for a while?
>>>>
>>>> If it really takes that long then you should build a page where
>>>> 
> people
>   
>>>> can
>>>> fire searches to the system
>>>> and the page is just displayig the searches they did and then if
>>>> 
> the
>   
>>>> search
>>>> is finished that page can bring them to the result
>>>>
>>>> johan
>>>>
>>>>
>>>>
>>>>
>>>> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]>
>>>> 
> wrote:
>   
>>>>> that's nice to have but is there a way to work around this issue?
>>>>>   
> Our
>   
>>>>> application for customer service and they perform a lot search on
>>>>>   
> a
>   
>>>> huge
>>>> 
>>>>> database, in some cases, customer service would like to start new
>>>>>   
>>>> search.
>>>> 
>>>>> Since wicket is locked by page path, there is no way for CSR to
>>>>>   
> start
>   
>> a
>> 
>>>>> new
>>>>> request until previous one is finished.
>>>>>
>>>>>
>>>>> igor.vaynberg wrote:
>>>>

RE: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-31 Thread Weaver, Scott
I have just started encountering this issue with one of my Wicket apps.
Seems to have cropped up now that I am using the 1.3 rc1 (will be moving
to release this Friday), but this could wholly be coincidence.  What I
have noticed is, for me at least, this only happens on my Weblogic
servers (9.2) and not in my local dev environment running Jetty.  The
Weblogic logs reveal that after manually stopping a page load or after a
page timeout, threads go into a [STUCK] status and, I am theorizing,
locking the pagemap indefinitely.

Thanks,
-scott

> -Original Message-
> From: cemeterygate [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, January 29, 2008 10:51 AM
> To: users@wicket.apache.org
> Subject: Re: Pagemap null is still locked by blah exception, help!!
why
> does wicket have to lock the pagemap
> 
> 
> that's right, i am screwed anyway if request takes too long, but from
the
> browser user decide to give up current search by click the stop button
and
> fire a new search. Since the pagemap is still locked by previous
request,
> the second request will have to wait. sounds like i will end up handle
> this
> senario by pulling. is it possible to have a page that's not single
thread
> model? Can we have two interface, such as SingleThreadPage, and
> ConcurrentThreadPage?
> 
> 
> igor.vaynberg wrote:
> >
> > yeah, if it takes a while the browser will timeout and you are
screwed
> > anyways...
> >
> > what do you mean they cant start a new search? you mean they no
longer
> > for the results of the currently running search and just press the
> > search button again?
> >
> > if they would open a new tab with the search page, and you had
> > automultiwindowsupport option enabled that new opened page would be
> > created in a new pagemap, and so you wouldnt have a locking
problem...
> >
> > -igor
> >
> >
> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]>
wrote:
> >> shared resources are not synced thats one way of going round it.
> >>
> >> the other way is as igor describes. do the search in a seperate
thread.
> >> If it really takes that long then you do know that browsers also
can
> just
> >> time out after they don't get anything for a while?
> >>
> >> If it really takes that long then you should build a page where
people
> >> can
> >> fire searches to the system
> >> and the page is just displayig the searches they did and then if
the
> >> search
> >> is finished that page can bring them to the result
> >>
> >> johan
> >>
> >>
> >>
> >>
> >> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]>
wrote:
> >>
> >> >
> >> > that's nice to have but is there a way to work around this issue?
Our
> >> > application for customer service and they perform a lot search on
a
> >> huge
> >> > database, in some cases, customer service would like to start new
> >> search.
> >> > Since wicket is locked by page path, there is no way for CSR to
start
> a
> >> > new
> >> > request until previous one is finished.
> >> >
> >> >
> >> > igor.vaynberg wrote:
> >> > >
> >> > > the pages are locked on the pagemap. so you cannot have two
> >> concurrent
> >> > > requests from the same user to the same pagemap. this is so
when
> you
> >> > > are coding your pages you can use the much simpler
single-threaded
> >> > > model.
> >> > >
> >> > > every have fields in your servlet implementation? those have to
be
> >> > > synchronized or you will run into threading issues. this is the
> stuff
> >> > > we make sure you dont have to worry about.
> >> > >
> >> > > the trade off is that if you have long running requests you
should
> >> > > probably process them in a different thread and let the UI poll
for
> >> > > status.
> >> > >
> >> > > -igor
> >> > >
> >> > >
> >> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> wrote:
> >> > >>
> >> > >> So I developed my first wicket application and I kept getting
> >> exception
> >> > >> below
> >> > >> as soon as i point my application to production database.
> >> > >>
> >> > >> Can someone tell me why wicket can't handle concurrent
request?
> >> > >

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread cemeterygate

yea, i am using a thread pool. thanks

Eelco Hillenius wrote:
> 
> On Jan 30, 2008 10:00 AM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>> what you have now is better - doing a search in a different thread -
>> because it doesnt bogged on servlet contains's threadpool.
> 
> The only thing to consider is that you might want to limit the number
> of threads you can spawn. Consider using a thread pool.
> 
> Eelco
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15190992.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread cemeterygate

I agreed, able to interupt previous request and start a new is nice to have
:) i am pulling per 1 second because some queries actually come back pretty
quick. i hope this is not going to put stress on the server when there are
excessive number of long requests. 

Thanks for answering my questions.


igor.vaynberg wrote:
> 
> what you have now is better - doing a search in a different thread -
> because it doesnt bogged on servlet contains's threadpool.
> 
> -igor
> 
> 
> On Jan 30, 2008 9:11 AM, cemeterygate <[EMAIL PROTECTED]> wrote:
>>
>> arrrg, I've already changed the implementation by using auto refresh,
>> which
>> isn't that bad either, I can interupt the previous search request. but if
>> i
>> have saw ur post earlier, i wouldn't go long way to make those changes.
>>
>> Thanks anyway.
>>
>>
>>
>> Johan Compagner wrote:
>> >
>> > If 1 page instance can be accessed by multiply threads we suddenly have
>> to
>> > have synchronize blocks all over the place
>> > in our wicket code (especially the response area, rendering)
>> >
>> > Also in the request phase where you can alter components and so on.
>> Also
>> > needs to be synched. (add/remove of components, behaviours or
>> validatiors)
>> >
>> > Even when i just quickly think about it, there are s many things
>> that
>> > can go horrible wrong.. that i even dont dare to start coding for that.
>> >
>> > What you can do is post your search to a bookmarkable page. Those are
>> not
>> > locked because you create a new instance
>> >
>> > johan
>> >
>> >
>> > On Jan 29, 2008 4:51 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>> >
>> >>
>> >> that's right, i am screwed anyway if request takes too long, but from
>> the
>> >> browser user decide to give up current search by click the stop button
>> >> and
>> >> fire a new search. Since the pagemap is still locked by previous
>> request,
>> >> the second request will have to wait. sounds like i will end up handle
>> >> this
>> >> senario by pulling. is it possible to have a page that's not single
>> >> thread
>> >> model? Can we have two interface, such as SingleThreadPage, and
>> >> ConcurrentThreadPage?
>> >>
>> >>
>> >> igor.vaynberg wrote:
>> >> >
>> >> > yeah, if it takes a while the browser will timeout and you are
>> screwed
>> >> > anyways...
>> >> >
>> >> > what do you mean they cant start a new search? you mean they no
>> longer
>> >> > for the results of the currently running search and just press the
>> >> > search button again?
>> >> >
>> >> > if they would open a new tab with the search page, and you had
>> >> > automultiwindowsupport option enabled that new opened page would be
>> >> > created in a new pagemap, and so you wouldnt have a locking
>> problem...
>> >> >
>> >> > -igor
>> >> >
>> >> >
>> >> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]>
>> wrote:
>> >> >> shared resources are not synced thats one way of going round it.
>> >> >>
>> >> >> the other way is as igor describes. do the search in a seperate
>> >> thread.
>> >> >> If it really takes that long then you do know that browsers also
>> can
>> >> just
>> >> >> time out after they don't get anything for a while?
>> >> >>
>> >> >> If it really takes that long then you should build a page where
>> people
>> >> >> can
>> >> >> fire searches to the system
>> >> >> and the page is just displayig the searches they did and then if
>> the
>> >> >> search
>> >> >> is finished that page can bring them to the result
>> >> >>
>> >> >> johan
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]>
>> wrote:
>> >> >>
>> >> >> >
>> >> >> > that's nice to have but is there a way to work around this issue?
>> >> Our
>> >> >> > application for customer service and they perform a lot search on
>> a
>> >> >> huge
>> >> >> > database, in some cases, customer service would like to start new
>> >> >> search.
>> >> >> > Since wicket is locked by page path, there is no way for CSR to
>> >> start
>> >> a
>> >> >> > new
>> >> >> > request until previous one is finished.
>> >> >> >
>> >> >> >
>> >> >> > igor.vaynberg wrote:
>> >> >> > >
>> >> >> > > the pages are locked on the pagemap. so you cannot have two
>> >> >> concurrent
>> >> >> > > requests from the same user to the same pagemap. this is so
>> when
>> >> you
>> >> >> > > are coding your pages you can use the much simpler
>> single-threaded
>> >> >> > > model.
>> >> >> > >
>> >> >> > > every have fields in your servlet implementation? those have to
>> be
>> >> >> > > synchronized or you will run into threading issues. this is the
>> >> stuff
>> >> >> > > we make sure you dont have to worry about.
>> >> >> > >
>> >> >> > > the trade off is that if you have long running requests you
>> should
>> >> >> > > probably process them in a different thread and let the UI poll
>> >> for
>> >> >> > > status.
>> >> >> > >
>> >> >> > > -igor
>> >> >> > >
>> >> >> > >
>> >> >> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
>> >> wrote:
>> 

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread Eelco Hillenius
On Jan 30, 2008 10:00 AM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> what you have now is better - doing a search in a different thread -
> because it doesnt bogged on servlet contains's threadpool.

The only thing to consider is that you might want to limit the number
of threads you can spawn. Consider using a thread pool.

Eelco

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread Igor Vaynberg
what you have now is better - doing a search in a different thread -
because it doesnt bogged on servlet contains's threadpool.

-igor


On Jan 30, 2008 9:11 AM, cemeterygate <[EMAIL PROTECTED]> wrote:
>
> arrrg, I've already changed the implementation by using auto refresh, which
> isn't that bad either, I can interupt the previous search request. but if i
> have saw ur post earlier, i wouldn't go long way to make those changes.
>
> Thanks anyway.
>
>
>
> Johan Compagner wrote:
> >
> > If 1 page instance can be accessed by multiply threads we suddenly have to
> > have synchronize blocks all over the place
> > in our wicket code (especially the response area, rendering)
> >
> > Also in the request phase where you can alter components and so on. Also
> > needs to be synched. (add/remove of components, behaviours or validatiors)
> >
> > Even when i just quickly think about it, there are s many things that
> > can go horrible wrong.. that i even dont dare to start coding for that.
> >
> > What you can do is post your search to a bookmarkable page. Those are not
> > locked because you create a new instance
> >
> > johan
> >
> >
> > On Jan 29, 2008 4:51 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >
> >>
> >> that's right, i am screwed anyway if request takes too long, but from the
> >> browser user decide to give up current search by click the stop button
> >> and
> >> fire a new search. Since the pagemap is still locked by previous request,
> >> the second request will have to wait. sounds like i will end up handle
> >> this
> >> senario by pulling. is it possible to have a page that's not single
> >> thread
> >> model? Can we have two interface, such as SingleThreadPage, and
> >> ConcurrentThreadPage?
> >>
> >>
> >> igor.vaynberg wrote:
> >> >
> >> > yeah, if it takes a while the browser will timeout and you are screwed
> >> > anyways...
> >> >
> >> > what do you mean they cant start a new search? you mean they no longer
> >> > for the results of the currently running search and just press the
> >> > search button again?
> >> >
> >> > if they would open a new tab with the search page, and you had
> >> > automultiwindowsupport option enabled that new opened page would be
> >> > created in a new pagemap, and so you wouldnt have a locking problem...
> >> >
> >> > -igor
> >> >
> >> >
> >> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> >> >> shared resources are not synced thats one way of going round it.
> >> >>
> >> >> the other way is as igor describes. do the search in a seperate
> >> thread.
> >> >> If it really takes that long then you do know that browsers also can
> >> just
> >> >> time out after they don't get anything for a while?
> >> >>
> >> >> If it really takes that long then you should build a page where people
> >> >> can
> >> >> fire searches to the system
> >> >> and the page is just displayig the searches they did and then if the
> >> >> search
> >> >> is finished that page can bring them to the result
> >> >>
> >> >> johan
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >> >>
> >> >> >
> >> >> > that's nice to have but is there a way to work around this issue?
> >> Our
> >> >> > application for customer service and they perform a lot search on a
> >> >> huge
> >> >> > database, in some cases, customer service would like to start new
> >> >> search.
> >> >> > Since wicket is locked by page path, there is no way for CSR to
> >> start
> >> a
> >> >> > new
> >> >> > request until previous one is finished.
> >> >> >
> >> >> >
> >> >> > igor.vaynberg wrote:
> >> >> > >
> >> >> > > the pages are locked on the pagemap. so you cannot have two
> >> >> concurrent
> >> >> > > requests from the same user to the same pagemap. this is so when
> >> you
> >> >> > > are coding your pages you can use the much simpler single-threaded
> >> >> > > model.
> >> >> > >
> >> >> > > every have fields in your servlet implementation? those have to be
> >> >> > > synchronized or you will run into threading issues. this is the
> >> stuff
> >> >> > > we make sure you dont have to worry about.
> >> >> > >
> >> >> > > the trade off is that if you have long running requests you should
> >> >> > > probably process them in a different thread and let the UI poll
> >> for
> >> >> > > status.
> >> >> > >
> >> >> > > -igor
> >> >> > >
> >> >> > >
> >> >> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> >> wrote:
> >> >> > >>
> >> >> > >> So I developed my first wicket application and I kept getting
> >> >> exception
> >> >> > >> below
> >> >> > >> as soon as i point my application to production database.
> >> >> > >>
> >> >> > >> Can someone tell me why wicket can't handle concurrent request?
> >> >> > >>
> >> >> > >> to replicate this issue, i have a page with a form component and
> >> >> > regular
> >> >> > >> submit button.
> >> >> > >> on the onSubmit method,
> >> >> > >>  protected void onSubmit() {
> >> >> > >> t

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread cemeterygate

arrrg, I've already changed the implementation by using auto refresh, which
isn't that bad either, I can interupt the previous search request. but if i
have saw ur post earlier, i wouldn't go long way to make those changes. 

Thanks anyway.


Johan Compagner wrote:
> 
> If 1 page instance can be accessed by multiply threads we suddenly have to
> have synchronize blocks all over the place
> in our wicket code (especially the response area, rendering)
> 
> Also in the request phase where you can alter components and so on. Also
> needs to be synched. (add/remove of components, behaviours or validatiors)
> 
> Even when i just quickly think about it, there are s many things that
> can go horrible wrong.. that i even dont dare to start coding for that.
> 
> What you can do is post your search to a bookmarkable page. Those are not
> locked because you create a new instance
> 
> johan
> 
> 
> On Jan 29, 2008 4:51 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> 
>>
>> that's right, i am screwed anyway if request takes too long, but from the
>> browser user decide to give up current search by click the stop button
>> and
>> fire a new search. Since the pagemap is still locked by previous request,
>> the second request will have to wait. sounds like i will end up handle
>> this
>> senario by pulling. is it possible to have a page that's not single
>> thread
>> model? Can we have two interface, such as SingleThreadPage, and
>> ConcurrentThreadPage?
>>
>>
>> igor.vaynberg wrote:
>> >
>> > yeah, if it takes a while the browser will timeout and you are screwed
>> > anyways...
>> >
>> > what do you mean they cant start a new search? you mean they no longer
>> > for the results of the currently running search and just press the
>> > search button again?
>> >
>> > if they would open a new tab with the search page, and you had
>> > automultiwindowsupport option enabled that new opened page would be
>> > created in a new pagemap, and so you wouldnt have a locking problem...
>> >
>> > -igor
>> >
>> >
>> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>> >> shared resources are not synced thats one way of going round it.
>> >>
>> >> the other way is as igor describes. do the search in a seperate
>> thread.
>> >> If it really takes that long then you do know that browsers also can
>> just
>> >> time out after they don't get anything for a while?
>> >>
>> >> If it really takes that long then you should build a page where people
>> >> can
>> >> fire searches to the system
>> >> and the page is just displayig the searches they did and then if the
>> >> search
>> >> is finished that page can bring them to the result
>> >>
>> >> johan
>> >>
>> >>
>> >>
>> >>
>> >> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>> >>
>> >> >
>> >> > that's nice to have but is there a way to work around this issue?
>> Our
>> >> > application for customer service and they perform a lot search on a
>> >> huge
>> >> > database, in some cases, customer service would like to start new
>> >> search.
>> >> > Since wicket is locked by page path, there is no way for CSR to
>> start
>> a
>> >> > new
>> >> > request until previous one is finished.
>> >> >
>> >> >
>> >> > igor.vaynberg wrote:
>> >> > >
>> >> > > the pages are locked on the pagemap. so you cannot have two
>> >> concurrent
>> >> > > requests from the same user to the same pagemap. this is so when
>> you
>> >> > > are coding your pages you can use the much simpler single-threaded
>> >> > > model.
>> >> > >
>> >> > > every have fields in your servlet implementation? those have to be
>> >> > > synchronized or you will run into threading issues. this is the
>> stuff
>> >> > > we make sure you dont have to worry about.
>> >> > >
>> >> > > the trade off is that if you have long running requests you should
>> >> > > probably process them in a different thread and let the UI poll
>> for
>> >> > > status.
>> >> > >
>> >> > > -igor
>> >> > >
>> >> > >
>> >> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
>> wrote:
>> >> > >>
>> >> > >> So I developed my first wicket application and I kept getting
>> >> exception
>> >> > >> below
>> >> > >> as soon as i point my application to production database.
>> >> > >>
>> >> > >> Can someone tell me why wicket can't handle concurrent request?
>> >> > >>
>> >> > >> to replicate this issue, i have a page with a form component and
>> >> > regular
>> >> > >> submit button.
>> >> > >> on the onSubmit method,
>> >> > >>  protected void onSubmit() {
>> >> > >> try {
>> >> > >> Thread.sleep(3 * 60 * 1000);
>> >> > >> } catch (InterruptedException e) {
>> >> > >> }
>> >> > >>  }
>> >> > >>
>> >> > >> i put the thread into sleep for 3 minutes. I hit submit, then
>> stop
>> >> the
>> >> > >> request on browser and submit another request.  then result to a
>> >> > internal
>> >> > >> error page. Why can't wicket handle mutiple submit? i dont' get
>> it,
>> >> > >> shouldn't

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-30 Thread Johan Compagner
If 1 page instance can be accessed by multiply threads we suddenly have to
have synchronize blocks all over the place
in our wicket code (especially the response area, rendering)

Also in the request phase where you can alter components and so on. Also
needs to be synched. (add/remove of components, behaviours or validatiors)

Even when i just quickly think about it, there are s many things that
can go horrible wrong.. that i even dont dare to start coding for that.

What you can do is post your search to a bookmarkable page. Those are not
locked because you create a new instance

johan


On Jan 29, 2008 4:51 PM, cemeterygate <[EMAIL PROTECTED]> wrote:

>
> that's right, i am screwed anyway if request takes too long, but from the
> browser user decide to give up current search by click the stop button and
> fire a new search. Since the pagemap is still locked by previous request,
> the second request will have to wait. sounds like i will end up handle
> this
> senario by pulling. is it possible to have a page that's not single thread
> model? Can we have two interface, such as SingleThreadPage, and
> ConcurrentThreadPage?
>
>
> igor.vaynberg wrote:
> >
> > yeah, if it takes a while the browser will timeout and you are screwed
> > anyways...
> >
> > what do you mean they cant start a new search? you mean they no longer
> > for the results of the currently running search and just press the
> > search button again?
> >
> > if they would open a new tab with the search page, and you had
> > automultiwindowsupport option enabled that new opened page would be
> > created in a new pagemap, and so you wouldnt have a locking problem...
> >
> > -igor
> >
> >
> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> >> shared resources are not synced thats one way of going round it.
> >>
> >> the other way is as igor describes. do the search in a seperate thread.
> >> If it really takes that long then you do know that browsers also can
> just
> >> time out after they don't get anything for a while?
> >>
> >> If it really takes that long then you should build a page where people
> >> can
> >> fire searches to the system
> >> and the page is just displayig the searches they did and then if the
> >> search
> >> is finished that page can bring them to the result
> >>
> >> johan
> >>
> >>
> >>
> >>
> >> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >>
> >> >
> >> > that's nice to have but is there a way to work around this issue? Our
> >> > application for customer service and they perform a lot search on a
> >> huge
> >> > database, in some cases, customer service would like to start new
> >> search.
> >> > Since wicket is locked by page path, there is no way for CSR to start
> a
> >> > new
> >> > request until previous one is finished.
> >> >
> >> >
> >> > igor.vaynberg wrote:
> >> > >
> >> > > the pages are locked on the pagemap. so you cannot have two
> >> concurrent
> >> > > requests from the same user to the same pagemap. this is so when
> you
> >> > > are coding your pages you can use the much simpler single-threaded
> >> > > model.
> >> > >
> >> > > every have fields in your servlet implementation? those have to be
> >> > > synchronized or you will run into threading issues. this is the
> stuff
> >> > > we make sure you dont have to worry about.
> >> > >
> >> > > the trade off is that if you have long running requests you should
> >> > > probably process them in a different thread and let the UI poll for
> >> > > status.
> >> > >
> >> > > -igor
> >> > >
> >> > >
> >> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> wrote:
> >> > >>
> >> > >> So I developed my first wicket application and I kept getting
> >> exception
> >> > >> below
> >> > >> as soon as i point my application to production database.
> >> > >>
> >> > >> Can someone tell me why wicket can't handle concurrent request?
> >> > >>
> >> > >> to replicate this issue, i have a page with a form component and
> >> > regular
> >> > >> submit button.
> >> > >> on the onSubmit method,
> >> > >>  protected void onSubmit() {
> >> > >> try {
> >> > >> Thread.sleep(3 * 60 * 1000);
> >> > >> } catch (InterruptedException e) {
> >> > >> }
> >> > >>  }
> >> > >>
> >> > >> i put the thread into sleep for 3 minutes. I hit submit, then stop
> >> the
> >> > >> request on browser and submit another request.  then result to a
> >> > internal
> >> > >> error page. Why can't wicket handle mutiple submit? i dont' get
> it,
> >> > >> shouldn't wicket process the new require like how servlet works?
> >> > Someone
> >> > >> please tell me how to work around this issue. Thanks in advance.
> >> > >>
> >> > >>
> >> > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
> >>  >> > 1
> >> > >> minute the Pagemap null is still locked by:
> >> > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to
> >> get
> >> > >> the
> >> > >> page for path: 5>
>

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-29 Thread cemeterygate

that's right, i am screwed anyway if request takes too long, but from the
browser user decide to give up current search by click the stop button and
fire a new search. Since the pagemap is still locked by previous request,
the second request will have to wait. sounds like i will end up handle this
senario by pulling. is it possible to have a page that's not single thread
model? Can we have two interface, such as SingleThreadPage, and
ConcurrentThreadPage?


igor.vaynberg wrote:
> 
> yeah, if it takes a while the browser will timeout and you are screwed
> anyways...
> 
> what do you mean they cant start a new search? you mean they no longer
> for the results of the currently running search and just press the
> search button again?
> 
> if they would open a new tab with the search page, and you had
> automultiwindowsupport option enabled that new opened page would be
> created in a new pagemap, and so you wouldnt have a locking problem...
> 
> -igor
> 
> 
> On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>> shared resources are not synced thats one way of going round it.
>>
>> the other way is as igor describes. do the search in a seperate thread.
>> If it really takes that long then you do know that browsers also can just
>> time out after they don't get anything for a while?
>>
>> If it really takes that long then you should build a page where people
>> can
>> fire searches to the system
>> and the page is just displayig the searches they did and then if the
>> search
>> is finished that page can bring them to the result
>>
>> johan
>>
>>
>>
>>
>> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>>
>> >
>> > that's nice to have but is there a way to work around this issue? Our
>> > application for customer service and they perform a lot search on a
>> huge
>> > database, in some cases, customer service would like to start new
>> search.
>> > Since wicket is locked by page path, there is no way for CSR to start a
>> > new
>> > request until previous one is finished.
>> >
>> >
>> > igor.vaynberg wrote:
>> > >
>> > > the pages are locked on the pagemap. so you cannot have two
>> concurrent
>> > > requests from the same user to the same pagemap. this is so when you
>> > > are coding your pages you can use the much simpler single-threaded
>> > > model.
>> > >
>> > > every have fields in your servlet implementation? those have to be
>> > > synchronized or you will run into threading issues. this is the stuff
>> > > we make sure you dont have to worry about.
>> > >
>> > > the trade off is that if you have long running requests you should
>> > > probably process them in a different thread and let the UI poll for
>> > > status.
>> > >
>> > > -igor
>> > >
>> > >
>> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>> > >>
>> > >> So I developed my first wicket application and I kept getting
>> exception
>> > >> below
>> > >> as soon as i point my application to production database.
>> > >>
>> > >> Can someone tell me why wicket can't handle concurrent request?
>> > >>
>> > >> to replicate this issue, i have a page with a form component and
>> > regular
>> > >> submit button.
>> > >> on the onSubmit method,
>> > >>  protected void onSubmit() {
>> > >> try {
>> > >> Thread.sleep(3 * 60 * 1000);
>> > >> } catch (InterruptedException e) {
>> > >> }
>> > >>  }
>> > >>
>> > >> i put the thread into sleep for 3 minutes. I hit submit, then stop
>> the
>> > >> request on browser and submit another request.  then result to a
>> > internal
>> > >> error page. Why can't wicket handle mutiple submit? i dont' get it,
>> > >> shouldn't wicket process the new require like how servlet works?
>> > Someone
>> > >> please tell me how to work around this issue. Thanks in advance.
>> > >>
>> > >>
>> > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
>> > > 1
>> > >> minute the Pagemap null is still locked by:
>> > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to
>> get
>> > >> the
>> > >> page for path: 5>
>> > >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
>> > null
>> > >> is
>> > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
>> giving
>> > up
>> > >> trying to get the page for path: 5
>> > >> at org.apache.wicket.Session.getPage(Session.java:734)
>> > >> at
>> > >>
>> >
>> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
>> > (AbstractRequestCycleProcessor.java:443)
>> > >> at
>> > >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
>> > WebRequestCycleProcessor.java:139)
>> > >> at
>> org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
>> > >> at
>> org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
>> > >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
>> > :489)
>> > >> at
>> > >> org.apache.wicket.protocol.http

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Johan Compagner
interrupt() doesn't do much for a thread that isn't in wait/sleep or uses a
special nio interruptiblechannel
and most likely people have a try catch(Exception) around those and just go
on :)

johan

On Jan 29, 2008 12:26 AM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:

> cant we thread.interrupt() ? or will that actually kill the servlet
> thread without restarting it? havent throught this through all the
> way, just brainstorming.
>
> -igor
>
>
> On Jan 28, 2008 3:11 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> > how do you kill a current request?
> > you can't shoot down the thread, and we dont have any control of what
> > somebody is doing..
> > Ofcourse when it comes back at an wicket entry point at some time at
> some
> > place we could check
> > for a specific boolean and just throw an exception... But that is pretty
> > error prone i think.
> >
> >
> > On Jan 28, 2008 11:57 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> >
> > > maybe instead of waiting on the page to finish we should have an
> > > option to kill it, rollback, and start again with the new request?
> > > with the diskstore we have the old version serialized...
> > >
> > > -igor
> > >
> > >
> > > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> > >  > shared resources are not synced thats one way of going round it.
> > > >
> > > > the other way is as igor describes. do the search in a seperate
> thread.
> > > > If it really takes that long then you do know that browsers also can
> > > just
> > > > time out after they don't get anything for a while?
> > > >
> > > > If it really takes that long then you should build a page where
> people
> > > can
> > > > fire searches to the system
> > > > and the page is just displayig the searches they did and then if the
> > > search
> > > > is finished that page can bring them to the result
> > > >
> > > > johan
> > > >
> > > >
> > > >
> > > >
> > > > On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]>
> wrote:
> > > >
> > > > >
> > > > > that's nice to have but is there a way to work around this issue?
> Our
> > > > > application for customer service and they perform a lot search on
> a
> > > huge
> > > > > database, in some cases, customer service would like to start new
> > > search.
> > > > > Since wicket is locked by page path, there is no way for CSR to
> start
> > > a
> > > > > new
> > > > > request until previous one is finished.
> > > > >
> > > > >
> > > > > igor.vaynberg wrote:
> > > > > >
> > > > > > the pages are locked on the pagemap. so you cannot have two
> > > concurrent
> > > > > > requests from the same user to the same pagemap. this is so when
> you
> > > > > > are coding your pages you can use the much simpler
> single-threaded
> > > > > > model.
> > > > > >
> > > > > > every have fields in your servlet implementation? those have to
> be
> > > > > > synchronized or you will run into threading issues. this is the
> > > stuff
> > > > > > we make sure you dont have to worry about.
> > > > > >
> > > > > > the trade off is that if you have long running requests you
> should
> > > > > > probably process them in a different thread and let the UI poll
> for
> > > > > > status.
> > > > > >
> > > > > > -igor
> > > > > >
> > > > > >
> > > > > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> > > wrote:
> > > > > >>
> > > > > >> So I developed my first wicket application and I kept getting
> > > exception
> > > > > >> below
> > > > > >> as soon as i point my application to production database.
> > > > > >>
> > > > > >> Can someone tell me why wicket can't handle concurrent request?
> > > > > >>
> > > > > >> to replicate this issue, i have a page with a form component
> and
> > > > > regular
> > > > > >> submit button.
> > > > > >> on the onSubmit method,
> > > > > >>  protected void onSubmit() {
> > > > > >> try {
> > > > > >> Thread.sleep(3 * 60 * 1000);
> > > > > >> } catch (InterruptedException e) {
> > > > > >> }
> > > > > >>  }
> > > > > >>
> > > > > >> i put the thread into sleep for 3 minutes. I hit submit, then
> stop
> > > the
> > > > > >> request on browser and submit another request.  then result to
> a
> > > > > internal
> > > > > >> error page. Why can't wicket handle mutiple submit? i dont' get
> it,
> > > > > >> shouldn't wicket process the new require like how servlet
> works?
> > > > > Someone
> > > > > >> please tell me how to work around this issue. Thanks in
> advance.
> > > > > >>
> > > > > >>
> > > > > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle]
> -
> > >  > > > > 1
> > > > > >> minute the Pagemap null is still locked by:
> > > > > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying
> to
> > > get
> > > > > >> the
> > > > > >> page for path: 5>
> > > > > >> org.apache.wicket.WicketRuntimeException: After 1 minute the
> > > Pagemap
> > > > > null
> > > > > >> is
> > > > > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
> > >

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread cemeterygate

sounds like wicket need Optimistic concurrency control =) i will try what you
guys suggested. I still feel weird, maybe i am thinking too much in servlet
world.


igor.vaynberg wrote:
> 
> cant we thread.interrupt() ? or will that actually kill the servlet
> thread without restarting it? havent throught this through all the
> way, just brainstorming.
> 
> -igor
> 
> 
> On Jan 28, 2008 3:11 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>> how do you kill a current request?
>> you can't shoot down the thread, and we dont have any control of what
>> somebody is doing..
>> Ofcourse when it comes back at an wicket entry point at some time at some
>> place we could check
>> for a specific boolean and just throw an exception... But that is pretty
>> error prone i think.
>>
>>
>> On Jan 28, 2008 11:57 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>>
>> > maybe instead of waiting on the page to finish we should have an
>> > option to kill it, rollback, and start again with the new request?
>> > with the diskstore we have the old version serialized...
>> >
>> > -igor
>> >
>> >
>> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>> >  > shared resources are not synced thats one way of going round it.
>> > >
>> > > the other way is as igor describes. do the search in a seperate
>> thread.
>> > > If it really takes that long then you do know that browsers also can
>> > just
>> > > time out after they don't get anything for a while?
>> > >
>> > > If it really takes that long then you should build a page where
>> people
>> > can
>> > > fire searches to the system
>> > > and the page is just displayig the searches they did and then if the
>> > search
>> > > is finished that page can bring them to the result
>> > >
>> > > johan
>> > >
>> > >
>> > >
>> > >
>> > > On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]>
>> wrote:
>> > >
>> > > >
>> > > > that's nice to have but is there a way to work around this issue?
>> Our
>> > > > application for customer service and they perform a lot search on a
>> > huge
>> > > > database, in some cases, customer service would like to start new
>> > search.
>> > > > Since wicket is locked by page path, there is no way for CSR to
>> start
>> > a
>> > > > new
>> > > > request until previous one is finished.
>> > > >
>> > > >
>> > > > igor.vaynberg wrote:
>> > > > >
>> > > > > the pages are locked on the pagemap. so you cannot have two
>> > concurrent
>> > > > > requests from the same user to the same pagemap. this is so when
>> you
>> > > > > are coding your pages you can use the much simpler
>> single-threaded
>> > > > > model.
>> > > > >
>> > > > > every have fields in your servlet implementation? those have to
>> be
>> > > > > synchronized or you will run into threading issues. this is the
>> > stuff
>> > > > > we make sure you dont have to worry about.
>> > > > >
>> > > > > the trade off is that if you have long running requests you
>> should
>> > > > > probably process them in a different thread and let the UI poll
>> for
>> > > > > status.
>> > > > >
>> > > > > -igor
>> > > > >
>> > > > >
>> > > > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
>> > wrote:
>> > > > >>
>> > > > >> So I developed my first wicket application and I kept getting
>> > exception
>> > > > >> below
>> > > > >> as soon as i point my application to production database.
>> > > > >>
>> > > > >> Can someone tell me why wicket can't handle concurrent request?
>> > > > >>
>> > > > >> to replicate this issue, i have a page with a form component and
>> > > > regular
>> > > > >> submit button.
>> > > > >> on the onSubmit method,
>> > > > >>  protected void onSubmit() {
>> > > > >> try {
>> > > > >> Thread.sleep(3 * 60 * 1000);
>> > > > >> } catch (InterruptedException e) {
>> > > > >> }
>> > > > >>  }
>> > > > >>
>> > > > >> i put the thread into sleep for 3 minutes. I hit submit, then
>> stop
>> > the
>> > > > >> request on browser and submit another request.  then result to a
>> > > > internal
>> > > > >> error page. Why can't wicket handle mutiple submit? i dont' get
>> it,
>> > > > >> shouldn't wicket process the new require like how servlet works?
>> > > > Someone
>> > > > >> please tell me how to work around this issue. Thanks in advance.
>> > > > >>
>> > > > >>
>> > > > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
>> > > > > > 1
>> > > > >> minute the Pagemap null is still locked by:
>> > > > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying
>> to
>> > get
>> > > > >> the
>> > > > >> page for path: 5>
>> > > > >> org.apache.wicket.WicketRuntimeException: After 1 minute the
>> > Pagemap
>> > > > null
>> > > > >> is
>> > > > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
>> > giving
>> > > > up
>> > > > >> trying to get the page for path: 5
>> > > > >> at org.apache.wicket.Session.getPage(Session.java:734)
>> > > > >> at
>> > > > >>
>> > > >
>> >
>> 

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Igor Vaynberg
cant we thread.interrupt() ? or will that actually kill the servlet
thread without restarting it? havent throught this through all the
way, just brainstorming.

-igor


On Jan 28, 2008 3:11 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> how do you kill a current request?
> you can't shoot down the thread, and we dont have any control of what
> somebody is doing..
> Ofcourse when it comes back at an wicket entry point at some time at some
> place we could check
> for a specific boolean and just throw an exception... But that is pretty
> error prone i think.
>
>
> On Jan 28, 2008 11:57 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>
> > maybe instead of waiting on the page to finish we should have an
> > option to kill it, rollback, and start again with the new request?
> > with the diskstore we have the old version serialized...
> >
> > -igor
> >
> >
> > On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> >  > shared resources are not synced thats one way of going round it.
> > >
> > > the other way is as igor describes. do the search in a seperate thread.
> > > If it really takes that long then you do know that browsers also can
> > just
> > > time out after they don't get anything for a while?
> > >
> > > If it really takes that long then you should build a page where people
> > can
> > > fire searches to the system
> > > and the page is just displayig the searches they did and then if the
> > search
> > > is finished that page can bring them to the result
> > >
> > > johan
> > >
> > >
> > >
> > >
> > > On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> > >
> > > >
> > > > that's nice to have but is there a way to work around this issue? Our
> > > > application for customer service and they perform a lot search on a
> > huge
> > > > database, in some cases, customer service would like to start new
> > search.
> > > > Since wicket is locked by page path, there is no way for CSR to start
> > a
> > > > new
> > > > request until previous one is finished.
> > > >
> > > >
> > > > igor.vaynberg wrote:
> > > > >
> > > > > the pages are locked on the pagemap. so you cannot have two
> > concurrent
> > > > > requests from the same user to the same pagemap. this is so when you
> > > > > are coding your pages you can use the much simpler single-threaded
> > > > > model.
> > > > >
> > > > > every have fields in your servlet implementation? those have to be
> > > > > synchronized or you will run into threading issues. this is the
> > stuff
> > > > > we make sure you dont have to worry about.
> > > > >
> > > > > the trade off is that if you have long running requests you should
> > > > > probably process them in a different thread and let the UI poll for
> > > > > status.
> > > > >
> > > > > -igor
> > > > >
> > > > >
> > > > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> > wrote:
> > > > >>
> > > > >> So I developed my first wicket application and I kept getting
> > exception
> > > > >> below
> > > > >> as soon as i point my application to production database.
> > > > >>
> > > > >> Can someone tell me why wicket can't handle concurrent request?
> > > > >>
> > > > >> to replicate this issue, i have a page with a form component and
> > > > regular
> > > > >> submit button.
> > > > >> on the onSubmit method,
> > > > >>  protected void onSubmit() {
> > > > >> try {
> > > > >> Thread.sleep(3 * 60 * 1000);
> > > > >> } catch (InterruptedException e) {
> > > > >> }
> > > > >>  }
> > > > >>
> > > > >> i put the thread into sleep for 3 minutes. I hit submit, then stop
> > the
> > > > >> request on browser and submit another request.  then result to a
> > > > internal
> > > > >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> > > > >> shouldn't wicket process the new require like how servlet works?
> > > > Someone
> > > > >> please tell me how to work around this issue. Thanks in advance.
> > > > >>
> > > > >>
> > > > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
> >  > > > 1
> > > > >> minute the Pagemap null is still locked by:
> > > > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to
> > get
> > > > >> the
> > > > >> page for path: 5>
> > > > >> org.apache.wicket.WicketRuntimeException: After 1 minute the
> > Pagemap
> > > > null
> > > > >> is
> > > > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
> > giving
> > > > up
> > > > >> trying to get the page for path: 5
> > > > >> at org.apache.wicket.Session.getPage(Session.java:734)
> > > > >> at
> > > > >>
> > > >
> > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> > > > (AbstractRequestCycleProcessor.java:443)
> > > > >> at
> > > > >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> > > > WebRequestCycleProcessor.java:139)
> > > > >> at org.apache.wicket.RequestCycle.step(RequestCycle.java
> > :1152)
> > > > >>  

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Johan Compagner
you can do that polling with an ajax request
and if the searches take that long anyway polling every second doesn't make
sense to me anyway
you can do that every 5 or 10 seconds, because if a search can take much
more then a minute a few more seconds doesn't matter...

johan



On Jan 29, 2008 12:07 AM, cemeterygate <[EMAIL PROTECTED]> wrote:

>
> as for pulling, the page need to constantly refresh to check for new data
> and
> i also need to manage order of the requests. shared resources sounds like
> more close to how servlet would work. i am still new with wicket, is there
> any example out there i can use as reference?
>
> thanks for answering all the puzzles in my head.
>
>
> Johan Compagner wrote:
> >
> > shared resources are not synced thats one way of going round it.
> >
> > the other way is as igor describes. do the search in a seperate thread.
> > If it really takes that long then you do know that browsers also can
> just
> > time out after they don't get anything for a while?
> >
> > If it really takes that long then you should build a page where people
> can
> > fire searches to the system
> > and the page is just displayig the searches they did and then if the
> > search
> > is finished that page can bring them to the result
> >
> > johan
> >
> >
> >
> > On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >
> >>
> >> that's nice to have but is there a way to work around this issue? Our
> >> application for customer service and they perform a lot search on a
> huge
> >> database, in some cases, customer service would like to start new
> search.
> >> Since wicket is locked by page path, there is no way for CSR to start a
> >> new
> >> request until previous one is finished.
> >>
> >>
> >> igor.vaynberg wrote:
> >> >
> >> > the pages are locked on the pagemap. so you cannot have two
> concurrent
> >> > requests from the same user to the same pagemap. this is so when you
> >> > are coding your pages you can use the much simpler single-threaded
> >> > model.
> >> >
> >> > every have fields in your servlet implementation? those have to be
> >> > synchronized or you will run into threading issues. this is the stuff
> >> > we make sure you dont have to worry about.
> >> >
> >> > the trade off is that if you have long running requests you should
> >> > probably process them in a different thread and let the UI poll for
> >> > status.
> >> >
> >> > -igor
> >> >
> >> >
> >> > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >> >>
> >> >> So I developed my first wicket application and I kept getting
> >> exception
> >> >> below
> >> >> as soon as i point my application to production database.
> >> >>
> >> >> Can someone tell me why wicket can't handle concurrent request?
> >> >>
> >> >> to replicate this issue, i have a page with a form component and
> >> regular
> >> >> submit button.
> >> >> on the onSubmit method,
> >> >>  protected void onSubmit() {
> >> >> try {
> >> >> Thread.sleep(3 * 60 * 1000);
> >> >> } catch (InterruptedException e) {
> >> >> }
> >> >>  }
> >> >>
> >> >> i put the thread into sleep for 3 minutes. I hit submit, then stop
> the
> >> >> request on browser and submit another request.  then result to a
> >> internal
> >> >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> >> >> shouldn't wicket process the new require like how servlet works?
> >> Someone
> >> >> please tell me how to work around this issue. Thanks in advance.
> >> >>
> >> >>
> >> >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
> >>  >> 1
> >> >> minute the Pagemap null is still locked by:
> >> >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to
> get
> >> >> the
> >> >> page for path: 5>
> >> >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
> >> null
> >> >> is
> >> >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
> giving
> >> up
> >> >> trying to get the page for path: 5
> >> >> at org.apache.wicket.Session.getPage(Session.java:734)
> >> >> at
> >> >>
> >>
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> >> (AbstractRequestCycleProcessor.java:443)
> >> >> at
> >> >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> >> WebRequestCycleProcessor.java:139)
> >> >> at org.apache.wicket.RequestCycle.step(RequestCycle.java
> :1152)
> >> >> at
> >> org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
> >> >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
> >> :489)
> >> >> at
> >> >> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
> >> :354)
> >> >> at
> >> >> org.apache.wicket.protocol.http.WicketServlet.doGet(
> WicketServlet.java
> >> :121)
> >> >> at
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
> >> >> at javax.servlet.http.HttpServlet.service(Htt

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Johan Compagner
how do you kill a current request?
you can't shoot down the thread, and we dont have any control of what
somebody is doing..
Ofcourse when it comes back at an wicket entry point at some time at some
place we could check
for a specific boolean and just throw an exception... But that is pretty
error prone i think.

On Jan 28, 2008 11:57 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:

> maybe instead of waiting on the page to finish we should have an
> option to kill it, rollback, and start again with the new request?
> with the diskstore we have the old version serialized...
>
> -igor
>
>
> On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>  > shared resources are not synced thats one way of going round it.
> >
> > the other way is as igor describes. do the search in a seperate thread.
> > If it really takes that long then you do know that browsers also can
> just
> > time out after they don't get anything for a while?
> >
> > If it really takes that long then you should build a page where people
> can
> > fire searches to the system
> > and the page is just displayig the searches they did and then if the
> search
> > is finished that page can bring them to the result
> >
> > johan
> >
> >
> >
> >
> > On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >
> > >
> > > that's nice to have but is there a way to work around this issue? Our
> > > application for customer service and they perform a lot search on a
> huge
> > > database, in some cases, customer service would like to start new
> search.
> > > Since wicket is locked by page path, there is no way for CSR to start
> a
> > > new
> > > request until previous one is finished.
> > >
> > >
> > > igor.vaynberg wrote:
> > > >
> > > > the pages are locked on the pagemap. so you cannot have two
> concurrent
> > > > requests from the same user to the same pagemap. this is so when you
> > > > are coding your pages you can use the much simpler single-threaded
> > > > model.
> > > >
> > > > every have fields in your servlet implementation? those have to be
> > > > synchronized or you will run into threading issues. this is the
> stuff
> > > > we make sure you dont have to worry about.
> > > >
> > > > the trade off is that if you have long running requests you should
> > > > probably process them in a different thread and let the UI poll for
> > > > status.
> > > >
> > > > -igor
> > > >
> > > >
> > > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]>
> wrote:
> > > >>
> > > >> So I developed my first wicket application and I kept getting
> exception
> > > >> below
> > > >> as soon as i point my application to production database.
> > > >>
> > > >> Can someone tell me why wicket can't handle concurrent request?
> > > >>
> > > >> to replicate this issue, i have a page with a form component and
> > > regular
> > > >> submit button.
> > > >> on the onSubmit method,
> > > >>  protected void onSubmit() {
> > > >> try {
> > > >> Thread.sleep(3 * 60 * 1000);
> > > >> } catch (InterruptedException e) {
> > > >> }
> > > >>  }
> > > >>
> > > >> i put the thread into sleep for 3 minutes. I hit submit, then stop
> the
> > > >> request on browser and submit another request.  then result to a
> > > internal
> > > >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> > > >> shouldn't wicket process the new require like how servlet works?
> > > Someone
> > > >> please tell me how to work around this issue. Thanks in advance.
> > > >>
> > > >>
> > > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
>  > > 1
> > > >> minute the Pagemap null is still locked by:
> > > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to
> get
> > > >> the
> > > >> page for path: 5>
> > > >> org.apache.wicket.WicketRuntimeException: After 1 minute the
> Pagemap
> > > null
> > > >> is
> > > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main],
> giving
> > > up
> > > >> trying to get the page for path: 5
> > > >> at org.apache.wicket.Session.getPage(Session.java:734)
> > > >> at
> > > >>
> > >
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> > > (AbstractRequestCycleProcessor.java:443)
> > > >> at
> > > >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> > > WebRequestCycleProcessor.java:139)
> > > >> at org.apache.wicket.RequestCycle.step(RequestCycle.java
> :1152)
> > > >> at org.apache.wicket.RequestCycle.steps(RequestCycle.java
> :1245)
> > > >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
> > > :489)
> > > >> at
> > > >> org.apache.wicket.protocol.http.WicketFilter.doGet(
> WicketFilter.java
> > > :354)
> > > >> at
> > > >> org.apache.wicket.protocol.http.WicketServlet.doGet(
> WicketServlet.java
> > > :121)
> > > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java
> :115)
> > > >> at javax.

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread cemeterygate

as for pulling, the page need to constantly refresh to check for new data and
i also need to manage order of the requests. shared resources sounds like
more close to how servlet would work. i am still new with wicket, is there
any example out there i can use as reference? 

thanks for answering all the puzzles in my head.


Johan Compagner wrote:
> 
> shared resources are not synced thats one way of going round it.
> 
> the other way is as igor describes. do the search in a seperate thread.
> If it really takes that long then you do know that browsers also can just
> time out after they don't get anything for a while?
> 
> If it really takes that long then you should build a page where people can
> fire searches to the system
> and the page is just displayig the searches they did and then if the
> search
> is finished that page can bring them to the result
> 
> johan
> 
> 
> 
> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> 
>>
>> that's nice to have but is there a way to work around this issue? Our
>> application for customer service and they perform a lot search on a huge
>> database, in some cases, customer service would like to start new search.
>> Since wicket is locked by page path, there is no way for CSR to start a
>> new
>> request until previous one is finished.
>>
>>
>> igor.vaynberg wrote:
>> >
>> > the pages are locked on the pagemap. so you cannot have two concurrent
>> > requests from the same user to the same pagemap. this is so when you
>> > are coding your pages you can use the much simpler single-threaded
>> > model.
>> >
>> > every have fields in your servlet implementation? those have to be
>> > synchronized or you will run into threading issues. this is the stuff
>> > we make sure you dont have to worry about.
>> >
>> > the trade off is that if you have long running requests you should
>> > probably process them in a different thread and let the UI poll for
>> > status.
>> >
>> > -igor
>> >
>> >
>> > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>> >>
>> >> So I developed my first wicket application and I kept getting
>> exception
>> >> below
>> >> as soon as i point my application to production database.
>> >>
>> >> Can someone tell me why wicket can't handle concurrent request?
>> >>
>> >> to replicate this issue, i have a page with a form component and
>> regular
>> >> submit button.
>> >> on the onSubmit method,
>> >>  protected void onSubmit() {
>> >> try {
>> >> Thread.sleep(3 * 60 * 1000);
>> >> } catch (InterruptedException e) {
>> >> }
>> >>  }
>> >>
>> >> i put the thread into sleep for 3 minutes. I hit submit, then stop the
>> >> request on browser and submit another request.  then result to a
>> internal
>> >> error page. Why can't wicket handle mutiple submit? i dont' get it,
>> >> shouldn't wicket process the new require like how servlet works?
>> Someone
>> >> please tell me how to work around this issue. Thanks in advance.
>> >>
>> >>
>> >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -
>> > 1
>> >> minute the Pagemap null is still locked by:
>> >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
>> >> the
>> >> page for path: 5>
>> >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
>> null
>> >> is
>> >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving
>> up
>> >> trying to get the page for path: 5
>> >> at org.apache.wicket.Session.getPage(Session.java:734)
>> >> at
>> >>
>> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
>> (AbstractRequestCycleProcessor.java:443)
>> >> at
>> >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
>> WebRequestCycleProcessor.java:139)
>> >> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
>> >> at
>> org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
>> >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
>> :489)
>> >> at
>> >> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
>> :354)
>> >> at
>> >> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java
>> :121)
>> >> at
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
>> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
>> >> at
>> >> com.caucho.server.dispatch.ServletFilterChain.doFilter(
>> ServletFilterChain.java:106)
>> >> --
>> >> View this message in context:
>> >>
>> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
>> >> Sent from the Wicket - User mailing list archive at
>> Nabble.com
>> .
>> >>
>> >>
>> >> -
>> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> For additional commands, e-m

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Igor Vaynberg
maybe instead of waiting on the page to finish we should have an
option to kill it, rollback, and start again with the new request?
with the diskstore we have the old version serialized...

-igor


On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> shared resources are not synced thats one way of going round it.
>
> the other way is as igor describes. do the search in a seperate thread.
> If it really takes that long then you do know that browsers also can just
> time out after they don't get anything for a while?
>
> If it really takes that long then you should build a page where people can
> fire searches to the system
> and the page is just displayig the searches they did and then if the search
> is finished that page can bring them to the result
>
> johan
>
>
>
>
> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>
> >
> > that's nice to have but is there a way to work around this issue? Our
> > application for customer service and they perform a lot search on a huge
> > database, in some cases, customer service would like to start new search.
> > Since wicket is locked by page path, there is no way for CSR to start a
> > new
> > request until previous one is finished.
> >
> >
> > igor.vaynberg wrote:
> > >
> > > the pages are locked on the pagemap. so you cannot have two concurrent
> > > requests from the same user to the same pagemap. this is so when you
> > > are coding your pages you can use the much simpler single-threaded
> > > model.
> > >
> > > every have fields in your servlet implementation? those have to be
> > > synchronized or you will run into threading issues. this is the stuff
> > > we make sure you dont have to worry about.
> > >
> > > the trade off is that if you have long running requests you should
> > > probably process them in a different thread and let the UI poll for
> > > status.
> > >
> > > -igor
> > >
> > >
> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> > >>
> > >> So I developed my first wicket application and I kept getting exception
> > >> below
> > >> as soon as i point my application to production database.
> > >>
> > >> Can someone tell me why wicket can't handle concurrent request?
> > >>
> > >> to replicate this issue, i have a page with a form component and
> > regular
> > >> submit button.
> > >> on the onSubmit method,
> > >>  protected void onSubmit() {
> > >> try {
> > >> Thread.sleep(3 * 60 * 1000);
> > >> } catch (InterruptedException e) {
> > >> }
> > >>  }
> > >>
> > >> i put the thread into sleep for 3 minutes. I hit submit, then stop the
> > >> request on browser and submit another request.  then result to a
> > internal
> > >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> > >> shouldn't wicket process the new require like how servlet works?
> > Someone
> > >> please tell me how to work around this issue. Thanks in advance.
> > >>
> > >>
> > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -  > 1
> > >> minute the Pagemap null is still locked by:
> > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
> > >> the
> > >> page for path: 5>
> > >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
> > null
> > >> is
> > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving
> > up
> > >> trying to get the page for path: 5
> > >> at org.apache.wicket.Session.getPage(Session.java:734)
> > >> at
> > >>
> > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> > (AbstractRequestCycleProcessor.java:443)
> > >> at
> > >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> > WebRequestCycleProcessor.java:139)
> > >> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
> > >> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
> > >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
> > :489)
> > >> at
> > >> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
> > :354)
> > >> at
> > >> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java
> > :121)
> > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
> > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
> > >> at
> > >> com.caucho.server.dispatch.ServletFilterChain.doFilter(
> > ServletFilterChain.java:106)
> > >> --
> > >> View this message in context:
> > >>
> > http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
> > >> Sent from the Wicket - User mailing list archive at 
> > >> Nabble.com
> > .
> > >>
> > >>
> > >> -
> > >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >> For additional commands, e-m

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Igor Vaynberg
yeah, if it takes a while the browser will timeout and you are screwed
anyways...

what do you mean they cant start a new search? you mean they no longer
for the results of the currently running search and just press the
search button again?

if they would open a new tab with the search page, and you had
automultiwindowsupport option enabled that new opened page would be
created in a new pagemap, and so you wouldnt have a locking problem...

-igor


On Jan 28, 2008 2:51 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> shared resources are not synced thats one way of going round it.
>
> the other way is as igor describes. do the search in a seperate thread.
> If it really takes that long then you do know that browsers also can just
> time out after they don't get anything for a while?
>
> If it really takes that long then you should build a page where people can
> fire searches to the system
> and the page is just displayig the searches they did and then if the search
> is finished that page can bring them to the result
>
> johan
>
>
>
>
> On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>
> >
> > that's nice to have but is there a way to work around this issue? Our
> > application for customer service and they perform a lot search on a huge
> > database, in some cases, customer service would like to start new search.
> > Since wicket is locked by page path, there is no way for CSR to start a
> > new
> > request until previous one is finished.
> >
> >
> > igor.vaynberg wrote:
> > >
> > > the pages are locked on the pagemap. so you cannot have two concurrent
> > > requests from the same user to the same pagemap. this is so when you
> > > are coding your pages you can use the much simpler single-threaded
> > > model.
> > >
> > > every have fields in your servlet implementation? those have to be
> > > synchronized or you will run into threading issues. this is the stuff
> > > we make sure you dont have to worry about.
> > >
> > > the trade off is that if you have long running requests you should
> > > probably process them in a different thread and let the UI poll for
> > > status.
> > >
> > > -igor
> > >
> > >
> > > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> > >>
> > >> So I developed my first wicket application and I kept getting exception
> > >> below
> > >> as soon as i point my application to production database.
> > >>
> > >> Can someone tell me why wicket can't handle concurrent request?
> > >>
> > >> to replicate this issue, i have a page with a form component and
> > regular
> > >> submit button.
> > >> on the onSubmit method,
> > >>  protected void onSubmit() {
> > >> try {
> > >> Thread.sleep(3 * 60 * 1000);
> > >> } catch (InterruptedException e) {
> > >> }
> > >>  }
> > >>
> > >> i put the thread into sleep for 3 minutes. I hit submit, then stop the
> > >> request on browser and submit another request.  then result to a
> > internal
> > >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> > >> shouldn't wicket process the new require like how servlet works?
> > Someone
> > >> please tell me how to work around this issue. Thanks in advance.
> > >>
> > >>
> > >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -  > 1
> > >> minute the Pagemap null is still locked by:
> > >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
> > >> the
> > >> page for path: 5>
> > >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
> > null
> > >> is
> > >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving
> > up
> > >> trying to get the page for path: 5
> > >> at org.apache.wicket.Session.getPage(Session.java:734)
> > >> at
> > >>
> > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> > (AbstractRequestCycleProcessor.java:443)
> > >> at
> > >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> > WebRequestCycleProcessor.java:139)
> > >> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
> > >> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
> > >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
> > :489)
> > >> at
> > >> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
> > :354)
> > >> at
> > >> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java
> > :121)
> > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
> > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
> > >> at
> > >> com.caucho.server.dispatch.ServletFilterChain.doFilter(
> > ServletFilterChain.java:106)
> > >> --
> > >> View this message in context:
> > >>
> > http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
> > >> Sent from the Wi

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Johan Compagner
shared resources are not synced thats one way of going round it.

the other way is as igor describes. do the search in a seperate thread.
If it really takes that long then you do know that browsers also can just
time out after they don't get anything for a while?

If it really takes that long then you should build a page where people can
fire searches to the system
and the page is just displayig the searches they did and then if the search
is finished that page can bring them to the result

johan



On Jan 28, 2008 11:46 PM, cemeterygate <[EMAIL PROTECTED]> wrote:

>
> that's nice to have but is there a way to work around this issue? Our
> application for customer service and they perform a lot search on a huge
> database, in some cases, customer service would like to start new search.
> Since wicket is locked by page path, there is no way for CSR to start a
> new
> request until previous one is finished.
>
>
> igor.vaynberg wrote:
> >
> > the pages are locked on the pagemap. so you cannot have two concurrent
> > requests from the same user to the same pagemap. this is so when you
> > are coding your pages you can use the much simpler single-threaded
> > model.
> >
> > every have fields in your servlet implementation? those have to be
> > synchronized or you will run into threading issues. this is the stuff
> > we make sure you dont have to worry about.
> >
> > the trade off is that if you have long running requests you should
> > probably process them in a different thread and let the UI poll for
> > status.
> >
> > -igor
> >
> >
> > On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
> >>
> >> So I developed my first wicket application and I kept getting exception
> >> below
> >> as soon as i point my application to production database.
> >>
> >> Can someone tell me why wicket can't handle concurrent request?
> >>
> >> to replicate this issue, i have a page with a form component and
> regular
> >> submit button.
> >> on the onSubmit method,
> >>  protected void onSubmit() {
> >> try {
> >> Thread.sleep(3 * 60 * 1000);
> >> } catch (InterruptedException e) {
> >> }
> >>  }
> >>
> >> i put the thread into sleep for 3 minutes. I hit submit, then stop the
> >> request on browser and submit another request.  then result to a
> internal
> >> error page. Why can't wicket handle mutiple submit? i dont' get it,
> >> shouldn't wicket process the new require like how servlet works?
> Someone
> >> please tell me how to work around this issue. Thanks in advance.
> >>
> >>
> >> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -  1
> >> minute the Pagemap null is still locked by:
> >> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
> >> the
> >> page for path: 5>
> >> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
> null
> >> is
> >> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving
> up
> >> trying to get the page for path: 5
> >> at org.apache.wicket.Session.getPage(Session.java:734)
> >> at
> >>
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> (AbstractRequestCycleProcessor.java:443)
> >> at
> >> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> WebRequestCycleProcessor.java:139)
> >> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
> >> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
> >> at org.apache.wicket.RequestCycle.request(RequestCycle.java
> :489)
> >> at
> >> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
> :354)
> >> at
> >> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java
> :121)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
> >> at
> >> com.caucho.server.dispatch.ServletFilterChain.doFilter(
> ServletFilterChain.java:106)
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
> >> Sent from the Wicket - User mailing list archive at 
> >> Nabble.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]
> >
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15147756.html
>  Sent from the Wicket - User mailing list archive at 
> Nabble.com

Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread cemeterygate

btw, thank you for answer the question.


cemeterygate wrote:
> 
> that's nice to have but is there a way to work around this issue? Our
> application for customer service and they perform a lot search on a huge
> database, in some cases, customer service would like to start new search.
> Since wicket is locked by page path, there is no way for CSR to start a
> new request until previous one is finished. 
> 
> 
> igor.vaynberg wrote:
>> 
>> the pages are locked on the pagemap. so you cannot have two concurrent
>> requests from the same user to the same pagemap. this is so when you
>> are coding your pages you can use the much simpler single-threaded
>> model.
>> 
>> every have fields in your servlet implementation? those have to be
>> synchronized or you will run into threading issues. this is the stuff
>> we make sure you dont have to worry about.
>> 
>> the trade off is that if you have long running requests you should
>> probably process them in a different thread and let the UI poll for
>> status.
>> 
>> -igor
>> 
>> 
>> On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>>>
>>> So I developed my first wicket application and I kept getting exception
>>> below
>>> as soon as i point my application to production database.
>>>
>>> Can someone tell me why wicket can't handle concurrent request?
>>>
>>> to replicate this issue, i have a page with a form component and regular
>>> submit button.
>>> on the onSubmit method,
>>>  protected void onSubmit() {
>>> try {
>>> Thread.sleep(3 * 60 * 1000);
>>> } catch (InterruptedException e) {
>>> }
>>>  }
>>>
>>> i put the thread into sleep for 3 minutes. I hit submit, then stop the
>>> request on browser and submit another request.  then result to a
>>> internal
>>> error page. Why can't wicket handle mutiple submit? i dont' get it,
>>> shouldn't wicket process the new require like how servlet works? Someone
>>> please tell me how to work around this issue. Thanks in advance.
>>>
>>>
>>> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] - >> 1
>>> minute the Pagemap null is still locked by:
>>> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
>>> the
>>> page for path: 5>
>>> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap
>>> null is
>>> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving
>>> up
>>> trying to get the page for path: 5
>>> at org.apache.wicket.Session.getPage(Session.java:734)
>>> at
>>> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:443)
>>> at
>>> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:139)
>>> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
>>> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
>>> at org.apache.wicket.RequestCycle.request(RequestCycle.java:489)
>>> at
>>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:354)
>>> at
>>> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:121)
>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
>>> at
>>> com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:106)
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
>>> Sent from the Wicket - User mailing list archive at Nabble.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]
>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15147759.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread cemeterygate

that's nice to have but is there a way to work around this issue? Our
application for customer service and they perform a lot search on a huge
database, in some cases, customer service would like to start new search.
Since wicket is locked by page path, there is no way for CSR to start a new
request until previous one is finished. 


igor.vaynberg wrote:
> 
> the pages are locked on the pagemap. so you cannot have two concurrent
> requests from the same user to the same pagemap. this is so when you
> are coding your pages you can use the much simpler single-threaded
> model.
> 
> every have fields in your servlet implementation? those have to be
> synchronized or you will run into threading issues. this is the stuff
> we make sure you dont have to worry about.
> 
> the trade off is that if you have long running requests you should
> probably process them in a different thread and let the UI poll for
> status.
> 
> -igor
> 
> 
> On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>>
>> So I developed my first wicket application and I kept getting exception
>> below
>> as soon as i point my application to production database.
>>
>> Can someone tell me why wicket can't handle concurrent request?
>>
>> to replicate this issue, i have a page with a form component and regular
>> submit button.
>> on the onSubmit method,
>>  protected void onSubmit() {
>> try {
>> Thread.sleep(3 * 60 * 1000);
>> } catch (InterruptedException e) {
>> }
>>  }
>>
>> i put the thread into sleep for 3 minutes. I hit submit, then stop the
>> request on browser and submit another request.  then result to a internal
>> error page. Why can't wicket handle mutiple submit? i dont' get it,
>> shouldn't wicket process the new require like how servlet works? Someone
>> please tell me how to work around this issue. Thanks in advance.
>>
>>
>> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] - > minute the Pagemap null is still locked by:
>> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get
>> the
>> page for path: 5>
>> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null
>> is
>> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving up
>> trying to get the page for path: 5
>> at org.apache.wicket.Session.getPage(Session.java:734)
>> at
>> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:443)
>> at
>> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:139)
>> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
>> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
>> at org.apache.wicket.RequestCycle.request(RequestCycle.java:489)
>> at
>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:354)
>> at
>> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:121)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
>> at
>> com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:106)
>> --
>> View this message in context:
>> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
>> Sent from the Wicket - User mailing list archive at Nabble.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]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15147756.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Igor Vaynberg
the pages are locked on the pagemap. so you cannot have two concurrent
requests from the same user to the same pagemap. this is so when you
are coding your pages you can use the much simpler single-threaded
model.

every have fields in your servlet implementation? those have to be
synchronized or you will run into threading issues. this is the stuff
we make sure you dont have to worry about.

the trade off is that if you have long running requests you should
probably process them in a different thread and let the UI poll for
status.

-igor


On Jan 28, 2008 2:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:
>
> So I developed my first wicket application and I kept getting exception below
> as soon as i point my application to production database.
>
> Can someone tell me why wicket can't handle concurrent request?
>
> to replicate this issue, i have a page with a form component and regular
> submit button.
> on the onSubmit method,
>  protected void onSubmit() {
> try {
> Thread.sleep(3 * 60 * 1000);
> } catch (InterruptedException e) {
> }
>  }
>
> i put the thread into sleep for 3 minutes. I hit submit, then stop the
> request on browser and submit another request.  then result to a internal
> error page. Why can't wicket handle mutiple submit? i dont' get it,
> shouldn't wicket process the new require like how servlet works? Someone
> please tell me how to work around this issue. Thanks in advance.
>
>
> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -  minute the Pagemap null is still locked by:
> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get the
> page for path: 5>
> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is
> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving up
> trying to get the page for path: 5
> at org.apache.wicket.Session.getPage(Session.java:734)
> at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:443)
> at
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:139)
> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
> at org.apache.wicket.RequestCycle.request(RequestCycle.java:489)
> at
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:354)
> at
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:121)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
> at
> com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:106)
> --
> View this message in context: 
> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
> Sent from the Wicket - User mailing list archive at Nabble.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]



Re: Pagemap null is still locked by blah exception, help!! why does wicket have to lock the pagemap

2008-01-28 Thread Johan Compagner
do you have request that take more then 1 minute?

Wicket has to do that to make sure that you as a developer doesnt have to
think about multi threaded
programming and we as a framework also doesn't have to worry about 2 render
cycles at the same
time of the same page.

johan



On Jan 28, 2008 11:08 PM, cemeterygate <[EMAIL PROTECTED]> wrote:

>
> So I developed my first wicket application and I kept getting exception
> below
> as soon as i point my application to production database.
>
> Can someone tell me why wicket can't handle concurrent request?
>
> to replicate this issue, i have a page with a form component and regular
> submit button.
> on the onSubmit method,
>  protected void onSubmit() {
>try {
>Thread.sleep(3 * 60 * 1000);
>} catch (InterruptedException e) {
>}
>  }
>
> i put the thread into sleep for 3 minutes. I hit submit, then stop the
> request on browser and submit another request.  then result to a internal
> error page. Why can't wicket handle mutiple submit? i dont' get it,
> shouldn't wicket process the new require like how servlet works? Someone
> please tell me how to work around this issue. Thanks in advance.
>
>
> 2008-01-25 14:45:05,443 ERROR [org.apache.wicket.RequestCycle] -  minute the Pagemap null is still locked by:
> Thread[resin-tcp-connection-*:8080-45,5,main], giving up trying to get the
> page for path: 5>
> org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null
> is
> still locked by: Thread[resin-tcp-connection-*:8080-45,5,main], giving up
> trying to get the page for path: 5
>at org.apache.wicket.Session.getPage(Session.java:734)
>at
>
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage
> (AbstractRequestCycleProcessor.java:443)
>at
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> WebRequestCycleProcessor.java:139)
>at org.apache.wicket.RequestCycle.step(RequestCycle.java:1152)
>at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1245)
>at org.apache.wicket.RequestCycle.request(RequestCycle.java:489)
>at
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:354)
>at
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java
> :121)
>at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
>at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
>at
> com.caucho.server.dispatch.ServletFilterChain.doFilter(
> ServletFilterChain.java:106)
> --
> View this message in context:
> http://www.nabble.com/Pagemap-null-is-still-locked-by-blah-exception%2C-help%21%21-why-does-wicket-have-to-lock-the-pagemap-tp15146763p15146763.html
> Sent from the Wicket - User mailing list archive at 
> Nabble.com
> .
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>