You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Igor Vaynberg (JIRA)" <ji...@apache.org> on 2010/08/26 02:06:09 UTC
[jira] Resolved: (WICKET-2138) SecondLevelCache + DiskPageStore
Serialization issue with Anonymous inner classes
[ https://issues.apache.org/jira/browse/WICKET-2138?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Igor Vaynberg resolved WICKET-2138.
-----------------------------------
Assignee: Igor Vaynberg (was: Johan Compagner)
Resolution: Fixed
cannot repro with latest 1.4.x
> SecondLevelCache + DiskPageStore Serialization issue with Anonymous inner classes
> ---------------------------------------------------------------------------------
>
> Key: WICKET-2138
> URL: https://issues.apache.org/jira/browse/WICKET-2138
> Project: Wicket
> Issue Type: Bug
> Components: wicket
> Affects Versions: 1.4-RC2
> Environment: Solaris/JDK6u10 Jetty clustered session store.
> Reporter: Victor Igumnov
> Assignee: Igor Vaynberg
>
> It seems like declaring an anonymous inner class will hold on to the previous page which will break serialization with secondlevelcache in a clustered environment.
> ---
> I have run into an odd issue with serialization which throws a stackoverflow exception. Here is the cause:
> Passing an LDM model as-is to a page, it will stackoverflow on the receiving page, if that page is refreshed twice or a form has been submitted.
> Here is an example...
> setResponsePage(new EditBlogPage(new LoadableDetachableModel<Blog>() {
> private static final long serialVersionUID = 1L;
> @Override
> protected Blog load() {
> // just an example....
> return new Blog();
> }
> }));
> However, if I subclass the LDM and pass it like so, it will work just fine.
> public class FakeLDM extends LoadableDetachableModel<Blog> {
> private static final long serialVersionUID = 1L;
> @Override
> protected Blog load() {
> return new Blog();
> }
> }
> setResponsePage(new EditBlogPage(new FakeLDM()));
> One last thing, If I construct the LDM inside the receiving page. It will work fine as well.
> This seems to only happen with the SecondLevelCache, any ideas?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.