Re: serialization problem with spring

2011-08-01 Thread Martin Grigorov
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

Re: serialization problem with spring

2011-08-01 Thread Dan Retzlaff
Did you put a breakpoint on the serialization exception? I'd guess that
something in your component hierarchy is holding a reference to AccountDAO.
Wicket only proxies @SpringBean annotated variables.

On Sun, Jul 31, 2011 at 10:10 PM, 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

serialization problem with spring

2011-07-31 Thread Joe Fawzy
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

Re: serialization problem with spring

2011-07-31 Thread Bruno Borges
What version of Wicket are you using?

On older versions you must declare your field as transient.

Newer versions don't required this anymore.

*Bruno Borges*
www.brunoborges.com.br
+55 21 76727099



On Sun, Jul 31, 2011 at 9: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

Re: serialization problem with spring

2011-07-31 Thread Dan Retzlaff
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

Re: serialization problem with spring

2011-07-31 Thread Joe Fawzy
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

Re: serialization problem with spring

2011-07-31 Thread Joe Fawzy
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