[
https://issues.apache.org/jira/browse/WICKET-1062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gerolf Seitz resolved WICKET-1062.
----------------------------------
Resolution: Fixed
Assignee: Matej Knopp
seems like matej fixed this by removing "transient" in rev. 588200.
please reopen if necessary.
> LocalizedImageResource does not serialize locale/style fields
> -------------------------------------------------------------
>
> Key: WICKET-1062
> URL: https://issues.apache.org/jira/browse/WICKET-1062
> Project: Wicket
> Issue Type: Bug
> Components: wicket
> Affects Versions: 1.3.0-beta4
> Reporter: John Ray
> Assignee: Matej Knopp
> Fix For: 1.3.0-beta5
>
>
> I have a page where clicking an AjaxLink causes an Image to be updated. In
> the onClick() method of the link I change the image via
> setImageResourceReference(). I then call
> AjaxRequestTarget.addComponent(image) to have the image rendered.
> Everything works great when the page is first loaded however if I navigate to
> a different page and then back again the image doesn't update the first time
> I click the link. The problem is that the LocalizedImageResource saves the
> current locale/style in transient fields when it is first created. By
> navigating to a different page and then back again it causes the class to get
> serialized and the locale and style are initialized to null. In
> setSrcAttribute() this code then compares the locale against the image
> component's locale.
> Locale l = component.getLocale();
> String s = component.getStyle();
> if (resourceKind == null ||
> (!Objects.equal(locale, component.getLocale()) || !Objects.equal(style,
> component
> .getStyle())))
> {
> // Get new component locale and style
> locale = component.getLocale();
> style = component.getStyle();
> // Invalidate current resource so it will be reloaded/recomputed
> resourceReference = null;
> resource = null;
> }
> Since the local in LocalizedImageResource was not serialized it never matches
> and my call to setImageResourceReference() is basically ignored.
> If you just remove the transient keyword from the locale and style fields it
> fixes the problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.