Hi Sven, Many thanks for your answer. My answers inlined
On Thu, May 20, 2021 at 12:24 AM Sven Meier <s...@meiers.net> wrote: > Hi Ernesto, > > have you compared with Wicket's websocket example? > Yes... I see no differences :-( Except we are using push components. I tried to simulate our use case with a new example https://github.com/apache/wicket/pull/469 but I can't reproduce the error in the example. Thus I still need to find out what is different in our application or what the example is missing in order to produce error. Check what thread is locking your page - do you have > ExceptionSettings#ThreadDumpStrategy set to THREAD_HOLDING_LOCK or > ALL_THREADS? > The default. No changes here. > > Regards > Sven > > > On 19.05.21 19:14, Ernesto Reinaldo Barreiro wrote: > > Hi, > > > > Context: we are trying to replace in our wicket application the use of > AJAX > > timers with Web sockets push. We are getting "strange" exceptions like > the > > ones below. > > > > ---------------------- > > java.lang.InterruptedException > > at > > > java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1261) > > at > > > java.base/java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:317) > > at > > > java.base/java.util.concurrent.LinkedBlockingQueue.offer(LinkedBlockingQueue.java:371) > > at > > > org.apache.wicket.pageStore.AsynchronousPageStore.addPage(AsynchronousPageStore.java:375) > > at > > > org.apache.wicket.pageStore.SerializingPageStore.addPage(SerializingPageStore.java:82) > > at > > > org.apache.wicket.pageStore.CachingPageStore.addPage(CachingPageStore.java:73) > > at > > > org.apache.wicket.pageStore.RequestPageStore.detach(RequestPageStore.java:114) > > at org.apache.wicket.page.PageManager.detach(PageManager.java:91) > > at > > org.apache.wicket.page > .PageAccessSynchronizer$1.detach(PageAccessSynchronizer.java:170) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketProcessor$1.onDetach(AbstractWebSocketProcessor.java:322) > > at > > > org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:105) > > at > > > org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:101) > > at > > > org.apache.wicket.util.listener.ListenerCollection$1.notify(ListenerCollection.java:120) > > at > > > org.apache.wicket.util.listener.ListenerCollection.reversedNotify(ListenerCollection.java:144) > > at > > > org.apache.wicket.util.listener.ListenerCollection.reversedNotifyIgnoringExceptions(ListenerCollection.java:113) > > at > > > org.apache.wicket.request.cycle.RequestCycleListenerCollection.onDetach(RequestCycleListenerCollection.java:100) > > at > > > org.apache.wicket.request.cycle.RequestCycle.onDetach(RequestCycle.java:670) > > at > > > org.apache.wicket.request.cycle.RequestCycle.detach(RequestCycle.java:625) > > at > > > org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:227) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:272) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:53) > > at > > org.apache.wicket.protocol.ws > .api.WebSocketPushBroadcaster$1.run(WebSocketPushBroadcaster.java:124) > > at > > org.apache.wicket.protocol.ws > .WebSocketSettings$WebSocketPushMessageExecutor.run(WebSocketSettings.java:456) > > at > > org.apache.wicket.protocol.ws > .api.WebSocketPushBroadcaster.process(WebSocketPushBroadcaster.java:119) > > at > > org.apache.wicket.protocol.ws > .api.WebSocketPushBroadcaster.broadcast(WebSocketPushBroadcaster.java:79) > > > > ---------------- > > > > org.apache.wicket.page.CouldNotLockPageException: Could not lock page 5. > > Attempt lasted PT1M > > at > > org.apache.wicket.page > .DefaultPageLockManager.lockPage(DefaultPageLockManager.java:170) > > at > > org.apache.wicket.page > .PageAccessSynchronizer.lockPage(PageAccessSynchronizer.java:72) > > at > > org.apache.wicket.page > .PageAccessSynchronizer$1.getPage(PageAccessSynchronizer.java:116) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketProcessor.getPage(AbstractWebSocketProcessor.java:340) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:258) > > at > > org.apache.wicket.protocol.ws > .api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:53) > > at > > org.apache.wicket.protocol.ws > .api.WebSocketPushBroadcaster$1.run(WebSocketPushBroadcaster.java:124) > > at > > > java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) > > at > > > java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) > > at java.base/java.lang.Thread.run(Thread.java:829) > > > > Are there any recommendations or requirements needed to get server side > > push working properly? > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > > -- Regards - Ernesto Reinaldo Barreiro