Emond Papegaaij created WICKET-6353:
---------------------------------------
Summary: Proxy deserialization fails due to classloading issues
Key: WICKET-6353
URL: https://issues.apache.org/jira/browse/WICKET-6353
Project: Wicket
Issue Type: Bug
Components: wicket
Affects Versions: 7.6.0
Reporter: Emond Papegaaij
JavaSerializer.ClassResolverObjectInputStream overrides resolveClass to resolve
classes via the Wicket ClassResolvers. This does however not happen for
resolveProxyClass.
An example of how this can go wrong:
* A page with a large component tree is deserialized (war).
* LinkedMap (used in MarkupContainer) is loaded in a parent ClassLoader (ear).
* Via this stack, a proxy is hit implementing Spring classes (from the war)
* Due to LinkedMap determining the latestUserDefinedLoader, the ear-loader is
used for the lookup of this interface, which fails
Unfortunately, writing a testcase for this is not easy, so I only have a
proposed fix.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)