Gee that looks weird. As far as I know, the only exotic stuff we do
with serializing is an optimization for page references. But I can't
see how that might relate to this.
Johan, any ideas? Any chance you could make a test case out of it Xavier?
Eelco
On 9/24/07, Xavier Hanin <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I have a strange CCE on page deserialization with wicket 1.3.0-beta3:
> java.lang.ClassCastException: cannot assign instance of
> org.apache.wicket.model.PropertyModel to field
> org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup.markupHelperof
> type
> org.apache.wicket.markup.html.ContainerWithAssociatedMarkupHelper in
> instance of org.xoocode.xooctory.web.component.form.LabelBorder
> at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(
> ObjectStreamClass.java:2032)
> at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java
> :1212)
> at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java
> :1951)
> at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java
> :1869)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java
> :1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
> at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
> at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java
> :1945)
> at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java
> :1869)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java
> :1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
> at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
> at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java
> :1945)
> at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java
> :1869)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java
> :1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
> at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
> at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java
> :1945)
> at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java
> :1869)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java
> :1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
> at org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java
> :396)
> at
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deserializePage(
> AbstractPageStore.java:231)
> at org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(
> DiskPageStore.java:596)
> at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.get
> (SecondLevelCacheSessionStore.java:322)
> at org.apache.wicket.Session.getPage(Session.java:800)
> at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(
> AbstractRequestCycleProcessor.java:427)
> at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(
> WebRequestCycleProcessor.java:139)
> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1091)
> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1177)
> at org.apache.wicket.RequestCycle.request(RequestCycle.java:500)
> at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
> :261)
> at org.apache.wicket.protocol.http.WicketFilter.doFilter(
> WicketFilter.java:127)
> at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(
> ServletHandler.java:1065)
> at
> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal
> (OpenSessionInViewFilter.java:198)
> at org.springframework.web.filter.OncePerRequestFilter.doFilter(
> OncePerRequestFilter.java:75)
> at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(
> ServletHandler.java:1065)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java
> :365)
> at org.mortbay.jetty.security.SecurityHandler.handle(
> SecurityHandler.java:185)
> at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java
> :181)
> at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java
> :689)
> at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java
> :391)
> at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java
> :139)
> at org.mortbay.jetty.Server.handle(Server.java:285)
> at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java
> :457)
> at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(
> HttpConnection.java:751)
> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)
> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
> at org.mortbay.io.nio.SelectChannelEndPoint.run(
> SelectChannelEndPoint.java:329)
> at org.mortbay.thread.BoundedThreadPool$PoolThread.run(
> BoundedThreadPool.java:475)
>
>
> The component on which I have the problem, LabelBorder, is a very simple
> Border component:
> public class LabelBorder extends Border {
> private static final long serialVersionUID = 1L;
>
> public LabelBorder(String id, IModel model, String label,
> String htmlTip) {
> super(id, model);
> add(new Label("label", label));
> if (htmlTip != null) {
> add(new ToolTipComponent("help", htmlTip));
> } else {
> add(new WebMarkupContainer("help"));
> }
> }
>
> public LabelBorder(String id, String label,
> String htmlTip) {
> this(id, null, label, htmlTip);
> }
>
> }
>
>
> So I'm wondering what can be going wrong. Any idea?
>
> Xavier
>
>
>
> --
> Xavier Hanin - Independent Java Consultant
> http://xhab.blogspot.com/
> http://incubator.apache.org/ivy/
> http://www.xoocode.org/
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]