Thank you very much. That was indeed a bug in PageWindowManager and
your solution seems to be the correct one.
-Matej
On 8/1/07, Jan Vermeulen <[EMAIL PROTECTED]> wrote:
>
> When calling removePage() of DiskPageStore, that ends up calling the method
> removePage() of PageWindowManager. That method correctly removes all version
> for a page, but it does not adjust the internal indexPointer, causing the
> next call to createPageWindow() to throw an ArrayIndexOutOfBoundsException
> when trying to allocate the pageWindow.
>
> I (locally) added the following code to removePage(int pageId, int
> versionNumber, int ajaxVersionNumber) of PageWindowManager:
>
> if (index == windows.size() - 1)
> {
> windows.remove(index);
> totalSize -= window.filePartSize;
> // patch to correct indexPointer on removal
> if (indexPointer == index)
> indexPointer--;
> }
>
> That currently solved the problem for me. I did not dig deep into the
> internals of the code, so it might not be the correct patch.
>
> Jan.
> --
> View this message in context:
> http://www.nabble.com/Bug-in-PageWindowManager-%28used-by-DiskPageStore%29-tf4202349.html#a11952786
> Sent from the Wicket - Dev mailing list archive at Nabble.com.
>
>