My application uses wicket-spring and I tested kryo-serializer with it
while developing it. No problems at all with serializing JDK based
proxies or CGLIB based ones.
We don't use Spring Data-JPA nor any other kind of JDBC based backend...

On Mon, Aug 1, 2011 at 8:41 AM, Joe Fawzy <joewic...@gmail.com> wrote:
> Hi
>
> actually for testing , i tried using the new kryo-serializer from wicket
> stuff
> IT DOES NOT WORK, actually it has many more errors than the default one,
> actuallly it cannot serialize a JdkDynamicProxy which is the basis for
> injection
> If someone have a solution or workaround , please help
> Thanks
> Joe
>
> On Mon, Aug 1, 2011 at 8:10 AM, Joe Fawzy <joewic...@gmail.com> wrote:
>
>> Hi
>>
>> i am living on the edge ,using wicket 1.5RC5.1 (the latest)
>> and also using the newly released Spring data-jpa project for data access
>>
>> i do not use or reference PersistenceExceptionTranslationInterceptor
>> directly, actually i never know it is there  till i saw that error
>>
>> based on its name it is an interceptor which translate the jpa or jdbc
>> exception to spring's counterpart
>>
>> in AccountManager there is an instance of AccountDAO which use this
>> persistence technology
>>
>> i thought it might be a solution to use kryo serialization as it does not
>> require the object to be serializable, but the site does not recommend using
>> it in production as it is in its early stages and not yet stable
>>
>> Any help please?
>>
>> Thanks
>>
>> Joe
>>
>> On Mon, Aug 1, 2011 at 4:35 AM, Dan Retzlaff <dretzl...@gmail.com> wrote:
>>
>>> Hi Joe,
>>>
>>> Based on the depth of that serialization stack, I doubt it's your
>>> AccountManager proxy that's giving you problems. I usually just breakpoint
>>> NotSerializableException and walk up the stack to find the culprit. Any
>>> change your CreatePage uses a method on AccountManager that returns an
>>> object with PersistenceExceptionTranslationInterceptor, then holds a
>>> reference to it? If so, that'll be a problem since Wicket doesn't know to
>>> proxy that one.
>>>
>>> Dan
>>>
>>> On Sun, Jul 31, 2011 at 5:08 PM, Joe Fawzy <joewic...@gmail.com> wrote:
>>>
>>> > Hi
>>> > i have a serialization problem with spring
>>> > My CreatePage class looks like:-
>>> >
>>> > public class CreatePage extends WebPage{
>>> >    @SpringBean
>>> >    AccountManager accountManager;
>>> > }
>>> >
>>> > as i am using @SpringBean , it should handle creating a serializable
>>> proxy
>>> > for me BUT
>>> >
>>> > i got the following exception
>>> >
>>> >
>>> >
>>> > ERROR - JavaSerializer             - Error serializing object class
>>> > com.app.view.account.CreatePage [object=[Page class =
>>> > com.app.view.account.CreatePage, id = 1, render count = 1]]
>>> > java.io.NotSerializableException:
>>> >
>>> org.springframework.dao.support.PersistenceExceptionTranslationInterceptor
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at
>>> >
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>>> > at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>>> > at
>>> >
>>> >
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>>> > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>>> > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.serialize.java.JavaSerializer.serialize(JavaSerializer.java:77)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.pageStore.DefaultPageStore.serializePage(DefaultPageStore.java:356)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.pageStore.DefaultPageStore.storePage(DefaultPageStore.java:142)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter.storeTouchedPages(PageStoreManager.java:377)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.page.RequestAdapter.commitRequest(RequestAdapter.java:171)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.page.AbstractPageManager.commitRequest(AbstractPageManager.java:94)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.page.PageManagerDecorator.commitRequest(PageManagerDecorator.java:68)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.page.PageAccessSynchronizer$2.commitRequest(PageAccessSynchronizer.java:213)
>>> > at org.apache.wicket.Application$2.onDetach(Application.java:1548)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:100)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:96)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.util.listener.ListenerCollection.reversedNotify(ListenerCollection.java:121)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.util.listener.ListenerCollection.reversedNotify(ListenerCollection.java:112)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.request.cycle.RequestCycleListenerCollection.onDetach(RequestCycleListenerCollection.java:94)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.request.cycle.RequestCycle.onDetach(RequestCycle.java:540)
>>> > at
>>> >
>>> org.apache.wicket.request.cycle.RequestCycle.detach(RequestCycle.java:479)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:257)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:160)
>>> > at
>>> >
>>> >
>>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:216)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>> > at
>>> >
>>> >
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>> > at
>>> >
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
>>> > at
>>> >
>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
>>> > at
>>> >
>>> >
>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>>> > at
>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>>> > at java.lang.Thread.run(Thread.java:619)
>>> >
>>> >
>>> > So , what is wrong?
>>> >
>>> > is there a work around
>>> >
>>> > thanks
>>> >
>>> > Joe
>>> >
>>>
>>
>>
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to