I guess it is a bug. Juergen
On 6/22/06, Eelco Hillenius <[EMAIL PROTECTED]> wrote: > ITestPageSource is not serializable. If it was, you wouldn't have this > problem. I don't use that part of Wicket myself, nor wrote it, so I'm > not sure if that interface not being serializable is intentional. > Maybe Ingram Chen can comment on that? > > Eelco > > > On 6/22/06, Gert Jan Verhoog <[EMAIL PROTECTED]> wrote: > > Juergen Donnerstag wrote: > > > HTTP sessions and hence Wicket Pages get serialized and hence all it > > > components and variable must be serializable or transient. We enforced > > > that policy a little bit to make sure the error are detected earlier > > > and late when the application is deployed already. Just make sure your > > > components and component variable implement Serializable. > > > > I am aware of that. Please look at the example code I included in my > > previous post. It's a trivial WebPage with a single label, and some > > WicketTester test code. That's all that's needed to cause the exception. > > This is code that I almost copied verbatim from the WicketTester api > > docs. > > > > There are no custom beans, so I don't see what I could make > > Serializable. In the actual project where I'm running into these > > problems, all beans are serializable or transient, and all business > > objects are injected with Spring proxies. (using @SpringBean annotations). > > > > The webapplication runs fine, it's *just* the WicketTester code that fails. > > > > Maybe there is a simple solution to this problem, but I'm obviously > > overlooking it. > > > > cheers, > > Gert > > > > > > > > > > > > wicket.WicketRuntimeException: Internal error cloning object. Make sure > > > all dependent objects implement Serializable. Class: > > > wicket.util.tester.DummyHomePage > > > > > > > > > On 6/21/06, Gert Jan Verhoog <[EMAIL PROTECTED]> wrote: > > >> Hi list, > > >> > > >> After upgrading to Wicket 1.2, wicket tests for my project don't work > > >> anymore. Testing a page that is initialized using a custom constructor > > >> causes a WicketRuntimeException: > > >> > > >> wicket.WicketRuntimeException: Internal error cloning object. Make sure > > >> all dependent objects implement Serializable. Class: > > >> wicket.util.tester.DummyHomePage > > >> at > > >> wicket.protocol.http.HttpSessionStore.setAttribute(HttpSessionStore.java:62) > > >> [... bits of stacktrace omitted for brevity ...] > > >> Caused by: java.io.NotSerializableException: com.example.MyPageTest$1 > > >> at > > >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075) > > >> at > > >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369) > > >> [... rest of stacktrace omitted for brevity ...] > > >> > > >> > > >> I created the initialized page with an anonymous ITestPageSource, as per > > >> the WicketTester javadocs. > > >> > > >> Consider the following example code that causes the error: > > >> > > >> MyPage.html: > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> <html xmlns:wicket="http://wicket.sourceforge.net/"> > > >> <head><title>bla</title></head> > > >> <body> > > >> <h1><span wicket:id="title">(title)</span></h1> > > >> </body> > > >> </html> > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> > > >> > > >> MyPage.java: > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> package com.example; > > >> > > >> import wicket.markup.html.WebPage; > > >> import wicket.markup.html.basic.Label; > > >> > > >> public class MyPage extends WebPage { > > >> > > >> public MyPage() { > > >> this("empty"); > > >> } > > >> > > >> public MyPage(String title) { > > >> add(new Label("title",title)); > > >> } > > >> } > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> > > >> > > >> and finally, MyPageTest.java: > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> package com.example; > > >> > > >> import junit.framework.TestCase; > > >> import wicket.Page; > > >> import wicket.util.tester.ITestPageSource; > > >> import wicket.util.tester.WicketTester; > > >> > > >> public class MyPageTest extends TestCase { > > >> > > >> public void testRenderMyPage() { > > >> WicketTester tester = new WicketTester(); > > >> > > >> // the following statement throws the exception: > > >> tester.startPage(new ITestPageSource() { > > >> public Page getTestPage() { > > >> return new MyPage("hello world"); > > >> } > > >> }); > > >> } > > >> } > > >> - - - - - - - - - - - - - - - - - - - - - - - - - - > > >> > > >> What's happening here? Most of my pages use custom constructors to > > >> initialize the page, and every test method that use these cause the > > >> error. What can I do about it? > > >> > > >> cheers, > > >> Gert > > >> > > >> > > >> -- > > >> Gert Jan Verhoog > > >> Func. Internet Integration > > >> W http://www.func.nl > > >> T +31 30 2109750 > > >> F +31 30 2109751 > > >> > > >> > > >> _______________________________________________ > > >> Wicket-user mailing list > > >> Wicket-user@lists.sourceforge.net > > >> https://lists.sourceforge.net/lists/listinfo/wicket-user > > >> > > > > > > > > > _______________________________________________ > > > Wicket-user mailing list > > > Wicket-user@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/wicket-user > > > > > > -- > > Gert Jan Verhoog > > Func. Internet Integration > > W http://www.func.nl > > T +31 30 2109750 > > F +31 30 2109751 > > > > All the advantages of Linux Managed Hosting--Without the Cost and Risk! > > Fully trained technicians. The highest number of Red Hat certifications in > > the hosting industry. Fanatical Support. Click to learn more > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642 > > _______________________________________________ > > Wicket-user mailing list > > Wicket-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wicket-user > > > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Wicket-user mailing list > Wicket-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wicket-user > Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user