Re: Migrating from Wicket 1.4 to 6 - Serialization

2018-01-21 Thread Maxim Solodovnik
It seems the problem is caused by the fact
java.lang.reflect.InvocationHandler interface does not extends Serializable


On Sun, Jan 21, 2018 at 8:48 PM, Leonardo D'Alimonte <
leonardo.dalimo...@loginet.it> wrote:

> Hi everyone,
> I'm working on the migration of our WebApplication from Wicket 1.4 to
> Wicket
> 6, I don't understand why with the new version I'm getting this exception;
>  BEGIN 
> 21/01/2018 14:24:37,925 ERROR -JavaSerializer - Error serializing object
> class
> it.loginet.petrol.presentation.viaggio.GestioneOperativaViaggioListPage
> [object=[Page class =
> it.loginet.petrol.presentation.viaggio.GestioneOperativaViaggioListPage,
> id
> = 4, render count = 1]] - <:>
> org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream$
> ObjectCheckException:
> The object type is not Serializable!
> A problem occurred while checking object with type:
> org.springframework.beans.factory.config.ServiceLocatorFactoryBean$
> ServiceLocatorInvocationHandler
> Field hierarchy is:
>   4
> [class=it.loginet.petrol.presentation.viaggio.
> GestioneOperativaViaggioListPage,
> path=4]
> private java.lang.Object org.apache.wicket.MarkupContainer.children
> [class=[Ljava.lang.Object;]
>   private java.lang.Object org.apache.wicket.
> MarkupContainer.children[6]
> [class=org.apache.wicket.markup.html.panel.Fragment, path=4:toolbar]
> private java.lang.Object org.apache.wicket.
> MarkupContainer.children
> [class=[Ljava.lang.Object;]
>   private java.util.List
> org.apache.wicket.request.mapper.parameter.PageParameters.
> namedParameters[1]
> [class=org.apache.wicket.markup.html.form.Form, path=4:toolbar:form]
> private java.lang.Object
> org.apache.wicket.MarkupContainer.children
> [class=it.loginet.petrol.presentation.programmazione.LiveDateSearchField,
> path=4:toolbar:form:filtroGiorno]
>   java.lang.Object org.apache.wicket.Component.data
> [class=[Ljava.lang.Object;]
> java.lang.Object org.apache.wicket.Component.data[0][1][2]
> [class=org.apache.wicket.ajax.form.AjaxFormSubmitBehavior]
>   private final org.apache.wicket.Component[]
> it.loginet.petrol.presentation.programmazione.LiveDateSearchField$1.val$
> targetComponents
> [class=[Lorg.apache.wicket.Component;]
> private final org.apache.wicket.Component[]
> it.loginet.petrol.presentation.programmazione.LiveDateSearchField$1.val$
> targetComponents[0]
> [class=it.loginet.commons.wicket.repeater.CustomDataTable,
> path=4:content:entitiesTable]
>   private java.lang.Object
> org.apache.wicket.MarkupContainer.children [class=[Ljava.lang.Object;]
> java.lang.Object org.apache.wicket.Component.
> data[1]
> [class=org.apache.wicket.markup.html.WebMarkupContainer,
> path=4:content:entitiesTable:body]
>   private java.lang.Object
> org.apache.wicket.MarkupContainer.children
> [class=org.apache.wicket.extensions.markup.html.
> repeater.data.table.DataTable$DefaultDataGridView,
> path=4:content:entitiesTable:body:rows]
> private java.lang.Object
> org.apache.wicket.MarkupContainer.children
> [class=org.apache.wicket.markup.repeater.OddEvenItem,
> path=4:content:entitiesTable:body:rows:1]
>   java.lang.Object
> org.apache.wicket.Component.data
> [class=it.loginet.petrol.presentation.sinottico.CachedDataProviderModel]
> private final java.lang.Object
> it.loginet.commons.wicket.repeater.DefaultSortableDataProvider$1.
> val$object
> [class=it.loginet.petrol.domain.viaggio.ViaggioRete]
>   protected
> it.loginet.petrol.application.prenotazione.ViaggioService
> it.loginet.petrol.domain.viaggio.AbstractViaggio.viaggioService
> [class=it.loginet.petrol.application.prenotazione.ViaggioService]
> private
> it.loginet.petrol.application.corsia.CorsiaService
> it.loginet.petrol.application.prenotazione.ViaggioService.corsiaService
> [class=it.loginet.petrol.application.corsia.CorsiaService]
>   private
> it.loginet.petrol.application.impianto.ImpiantoService
> it.loginet.petrol.application.corsia.CorsiaService.impiantoService
> [class=it.loginet.petrol.application.impianto.ImpiantoService]
> private
> it.loginet.petrol.presentation.giornata.GiornataContabileService
> it.loginet.petrol.application.impianto.ImpiantoService.
> giornataContabileService
> [class=it.loginet.petrol.presentation.giornata.GiornataContabileService]
>   private
> it.loginet.petrol.application.bettolina.BettolinaService
> it.loginet.petrol.presentation.giornata.GiornataContabileService.
> bettolinaService
> [class=it.loginet.petrol.application.bettolina.BettolinaService]
> private
> it.loginet.petrol.appl

Migrating from Wicket 1.4 to 6 - Serialization

2018-01-21 Thread Leonardo D'Alimonte
Hi everyone,
I'm working on the migration of our WebApplication from Wicket 1.4 to Wicket
6, I don't understand why with the new version I'm getting this exception;
 BEGIN 
21/01/2018 14:24:37,925 ERROR -JavaSerializer - Error serializing object
class
it.loginet.petrol.presentation.viaggio.GestioneOperativaViaggioListPage
[object=[Page class =
it.loginet.petrol.presentation.viaggio.GestioneOperativaViaggioListPage, id
= 4, render count = 1]] - <:>
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream$ObjectCheckException:
The object type is not Serializable!
A problem occurred while checking object with type:
org.springframework.beans.factory.config.ServiceLocatorFactoryBean$ServiceLocatorInvocationHandler
Field hierarchy is:
  4
[class=it.loginet.petrol.presentation.viaggio.GestioneOperativaViaggioListPage,
path=4]
private java.lang.Object org.apache.wicket.MarkupContainer.children
[class=[Ljava.lang.Object;]
  private java.lang.Object org.apache.wicket.MarkupContainer.children[6]
[class=org.apache.wicket.markup.html.panel.Fragment, path=4:toolbar]
private java.lang.Object org.apache.wicket.MarkupContainer.children
[class=[Ljava.lang.Object;]
  private java.util.List
org.apache.wicket.request.mapper.parameter.PageParameters.namedParameters[1]
[class=org.apache.wicket.markup.html.form.Form, path=4:toolbar:form]
private java.lang.Object
org.apache.wicket.MarkupContainer.children
[class=it.loginet.petrol.presentation.programmazione.LiveDateSearchField,
path=4:toolbar:form:filtroGiorno]
  java.lang.Object org.apache.wicket.Component.data
[class=[Ljava.lang.Object;]
java.lang.Object org.apache.wicket.Component.data[0][1][2]
[class=org.apache.wicket.ajax.form.AjaxFormSubmitBehavior]
  private final org.apache.wicket.Component[]
it.loginet.petrol.presentation.programmazione.LiveDateSearchField$1.val$targetComponents
[class=[Lorg.apache.wicket.Component;]
private final org.apache.wicket.Component[]
it.loginet.petrol.presentation.programmazione.LiveDateSearchField$1.val$targetComponents[0]
[class=it.loginet.commons.wicket.repeater.CustomDataTable,
path=4:content:entitiesTable]
  private java.lang.Object
org.apache.wicket.MarkupContainer.children [class=[Ljava.lang.Object;]
java.lang.Object org.apache.wicket.Component.data[1]
[class=org.apache.wicket.markup.html.WebMarkupContainer,
path=4:content:entitiesTable:body]
  private java.lang.Object
org.apache.wicket.MarkupContainer.children
[class=org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable$DefaultDataGridView,
path=4:content:entitiesTable:body:rows]
private java.lang.Object
org.apache.wicket.MarkupContainer.children
[class=org.apache.wicket.markup.repeater.OddEvenItem,
path=4:content:entitiesTable:body:rows:1]
  java.lang.Object
org.apache.wicket.Component.data
[class=it.loginet.petrol.presentation.sinottico.CachedDataProviderModel]
private final java.lang.Object
it.loginet.commons.wicket.repeater.DefaultSortableDataProvider$1.val$object
[class=it.loginet.petrol.domain.viaggio.ViaggioRete]
  protected
it.loginet.petrol.application.prenotazione.ViaggioService
it.loginet.petrol.domain.viaggio.AbstractViaggio.viaggioService
[class=it.loginet.petrol.application.prenotazione.ViaggioService]
private
it.loginet.petrol.application.corsia.CorsiaService
it.loginet.petrol.application.prenotazione.ViaggioService.corsiaService
[class=it.loginet.petrol.application.corsia.CorsiaService]
  private
it.loginet.petrol.application.impianto.ImpiantoService
it.loginet.petrol.application.corsia.CorsiaService.impiantoService
[class=it.loginet.petrol.application.impianto.ImpiantoService]
private
it.loginet.petrol.presentation.giornata.GiornataContabileService
it.loginet.petrol.application.impianto.ImpiantoService.giornataContabileService
[class=it.loginet.petrol.presentation.giornata.GiornataContabileService]
  private
it.loginet.petrol.application.bettolina.BettolinaService
it.loginet.petrol.presentation.giornata.GiornataContabileService.bettolinaService
[class=it.loginet.petrol.application.bettolina.BettolinaService]
private
it.loginet.petrol.application.quadratura.StampeFactory
it.loginet.petrol.application.bettolina.BettolinaService.stampeFactory
[class=com.sun.proxy.$Proxy24]
  protected
java.lang.reflect.InvocationHandler java.lang.reflect.Proxy.h
[class=org.springframework.beans.factory.config.ServiceLocatorFactoryBean$ServiceLocatorInvocationHandler]
<- field that is causing the problem
 END 

What changed