[
https://issues.apache.org/jira/browse/WICKET-6353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15960399#comment-15960399
]
ASF subversion and git services commented on WICKET-6353:
---------------------------------------------------------
Commit 4b2718346c84520f197c0514c9c29320423a8b07 in wicket's branch
refs/heads/classloadingfix from [~emond]
[ https://git-wip-us.apache.org/repos/asf?p=wicket.git;h=4b27183 ]
WICKET-6353: restrict number of reflection calls
> 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: see the classloadingfix branch
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)