I noticed two count queries go by when using the DataTable component. so I searched and dug up this jira issue https://issues.apache.org/jira/browse/WICKET-1766 which is a "won't fix".
Igor states that two queries are required each request, but I see this differently: The count is a used as the basis for the paging navigator's isVisible(), so far so good. The issue is that the count is discarded in onDetach() (as well as readObject()). It's state and as such should not be discarded when the request is finished, it's still needed for things like checking if a link was indeed visible when a click comes in for it. If it's not kept, a new query to the model will be made, which might return a different result - consequences ensue. The critical part of that is we are checking if the link *was* visible, not if it *is* visible. I think the only time it should be discarded is in the onBeforeRender() event. This is when we are actually interested in going back to the model to see if the value has changed. So to me this is indeed a bug. I don't mind patching something up myself, or reopening the ticket...but I would like a confirmation that I'm not way out in left field ;) Cheers! Jonathan Tougas