This is fixed in latest versions of Wicket.
Check the release notes at
https://issues.apache.org/jira/browse/WICKET#selectedTab=com.atlassian.jira.plugin.system.project%3Achangelog-panel
or 
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310561&version=12316329
I'm not sure whether it is 1.4.17 or 1.4.18 (not releases yet)

On Mon, May 9, 2011 at 3:18 PM, Vitor Granzinoli Vellozo
<vitor.vell...@cpmbraxis.com> wrote:
>
> Martin,
>
> Thanks for quickly response!
>
> I removed all "transient" from these objects. Now, when I click back, it's 
> ok! But, when I click to go forward appears
> that below error, something relative about deserialization.
>
> What could be?
>
> Thanks!
> Vitor
>
>
> 2011-05-09 10:13:36,185 [tomcat-http--16] TEST-APP ERROR 
> org.apache.wicket.RequestCycle                               - Could not 
> deserialize object using 
> `org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object factory
> java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object factory
>        at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:435) 
> ~[na:na]
>        at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deserializePage(AbstractPageStore.java:234)
>  ~[na:na]
>        at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskPageStore.java:735)
>  ~[na:na]
>        at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.get(SecondLevelCacheSessionStore.java:310)
>  ~[na:na]
>        at org.apache.wicket.Session.getPage(Session.java:774) ~[na:na]
>        at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:458)
>  ~[na:na]
>        at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:144)
>  ~[na:na]
>        at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310) [na:na]
>        at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) [na:na]
>        at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) 
> [na:na]
>        at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486) 
> [na:na]
>        at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319) 
> [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>  [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>  [na:na]
>        at 
> org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>  [na:na]
>        at 
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>  [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>  [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>  [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>  [na:na]
>        at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>  [na:na]
>        at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>  [na:na]
>        at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>  [na:na]
>        at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
> [na:na]
>        at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
> [na:na]
>        at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>  [na:na]
>        at 
> com.springsource.insight.collection.tcserver.request.HttpRequestOperationCollectionValve.traceNextValve(HttpRequestOperationCollectionValve.java:92)
>  [na:na]
>        at 
> com.springsource.insight.collection.tcserver.request.HttpRequestOperationCollectionValve.invoke(HttpRequestOperationCollectionValve.java:74)
>  [na:na]
>        at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
> [na:na]
>        at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) 
> [na:na]
>        at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>  [na:na]
>        at 
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:409)
>  [na:na]
>        at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
>  [na:1.5.0_22]
>        at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
>  [na:1.5.0_22]
>        at java.lang.Thread.run(Thread.java:595) [na:1.5.0_22]
> Caused by: java.io.InvalidClassException: 
> org.test.contact.facade.ContactServiceFacade; could not resolve class 
> [org.test.contacts.facade.ContactServiceFacade] when deserializing proxy
>        at 
> org.apache.wicket.proxy.LazyInitProxyFactory$ProxyReplacement.readResolve(LazyInitProxyFactory.java:236)
>  ~[na:na]
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.5.0_22]
>        at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
> ~[na:1.5.0_22]
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>  ~[na:1.5.0_22]
>        at java.lang.reflect.Method.invoke(Method.java:592) ~[na:1.5.0_22]
>        at 
> java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1033) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1728) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1910) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1834) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1634) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1910) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1834) 
> ~[na:1.5.0_22]
>        at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305) 
> ~[na:1.5.0_22]
>        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348) 
> ~[na:1.5.0_22]
>        at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:413) 
> ~[na:na]
>        ... 34 common frames omitted
>
> -----Mensagem original-----
> De: Martin Grigorov [mailto:mgrigo...@apache.org]
> Enviada em: segunda-feira, 9 de maio de 2011 09:54
> Para: users@wicket.apache.org
> Assunto: Re: Problems with @SpringBean
>
> Remove 'transient'
> The injected bean is a JDK Proxy which is serializable and lightweight
>
> On Mon, May 9, 2011 at 2:46 PM, Vitor Granzinoli Vellozo
> <vitor.vell...@cpmbraxis.com> wrote:
>>
>>
>> Hi all,
>>
>>
>>
>> I'm new here, and I have problem with @SpringBean when I click in
>> browser back Button.
>>
>> The Spring resource come null... when I load the Page first time,
>> everything works, but when
>>
>> go back, the Spring component comes null.
>>
>>
>>
>> It happens when I call the Spring component in load() method of a
>> LoadableDetachabelModel.
>>
>> It's strange for me, because it seems correct, it works firts time.
>>
>>
>>
>> Below the code:
>>
>>
>>
>> @SpringBean
>>
>> private transient ContactServiceFacade contactServiceFacade;
>>
>>
>>
>> class ContactListModel extends LoadableDetachableModel<List<Contact>> {
>>
>>      private static final long serialVersionUID = 2171287027239366394L;
>>
>>
>>
>>      @Override
>>
>>      public List<Contact> load() {
>>
>>            return contactServiceFacade.listContacts(); //Here firt time
>> works, on back is null.
>>
>>      }
>>
>> }
>>
>>
>>
>> Regards,
>>
>> Vitor
>>
>>
>>
>>
>>
>>
>
>
>
> --
> 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
>
>



-- 
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