I think Wicket 1.3.1 introduced a bug in the PageStore. I get a stack overflow with behaviors such as:
* Click on a link and then click on a second link (on the same page) before the first one finishes processing. * On Firefox, click on a link to a page, then click back to go back to the first page, then click on any link. * In IE, click on some links, click the back button. Stack trace below. Maybe somebody familiar with the bowels of Wicket PageStore can take a quick look to see if this is a bug? java.lang.StackOverflowError java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2264) java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2672) java.io.ObjectInputStream$BlockDataInputStream.readFully(ObjectInputStream.java:2696) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1934) java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:480) java.util.ArrayList.readObject(ArrayList.java:585) sun.reflect.GeneratedMethodAccessor324.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) java.util.ArrayList.readObject(ArrayList.java:593) sun.reflect.GeneratedMethodAccessor324.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) java.util.ArrayList.readObject(ArrayList.java:593) sun.reflect.GeneratedMethodAccessor324.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323) java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945) java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:392) org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deserializePage(AbstractPageStore.java:228) org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskPageStore.java:702) org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.get(SecondLevelCacheSessionStore.java:311) org.apache.wicket.Session.getPage(Session.java:745) org.apache.wicket.protocol.http.pagestore.AbstractPageStore$PageHolder.readResolve(AbstractPageStore.java:354) -- View this message in context: http://www.nabble.com/PageStore-Broken-in-1.3.1--tp15513039p15513039.html Sent from the Wicket - Dev mailing list archive at Nabble.com.