You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Christian Wellekötter (JIRA)" <ji...@apache.org> on 2013/01/30 15:11:13 UTC

[jira] [Commented] (WICKET-5014) Changes in WicketObjects.sizeof(final Serializable object) clashes with in AjaxResponse

    [ https://issues.apache.org/jira/browse/WICKET-5014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566501#comment-13566501 ] 

Christian Wellekötter commented on WICKET-5014:
-----------------------------------------------

I added the quickstart to the described issue.

If you take a closer look into the quickstart you will see a Label with an AjaxSelfUpdatingTimerBehavior. The Label itself is an anonymous implementation where I overwrote the _renderHead(IHeaderResponse)_ method. In this method I added an OnDomReadyHeaderItem.forScript to change the background color of the Label. You can see that the background color is changed after the initial page load. After the ajax response the label gets replaced but the background color does not change because the "header-contribution" is missing in the AjaxResponse.
                
> Changes in WicketObjects.sizeof(final Serializable object) clashes with <header-contribution> in AjaxResponse
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: WICKET-5014
>                 URL: https://issues.apache.org/jira/browse/WICKET-5014
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket, wicket-devutils
>    Affects Versions: 6.3.0, 6.4.0, 6.5.0
>            Reporter: Christian Wellekötter
>         Attachments: wicket-quickstart.zip
>
>
> I am currently developing on a RIA with wicket. Therefore 90 % of our request are Ajax-based. 
> In my development process I start the application with the development configuration and I like to display the DebugBar in our page. I implemented an AjaxRequestTargetListener that adds the DebugBar to the AjaxRequestTarget each time an ajax call is done. This AjaxRequestTargetListener is added and initialized in the Application as follows:
> getAjaxRequestTargetListeners().add(new AjaxUpdateRequestTargetListener())
> This configuration worked fine for every wicket version until 6.3.0. Then I got problems with the XMLAjaxResponse. The "header-contribution"-XML Element does not get rendered in the AjaxResponse anymore and the corresponding HeaderItems of the ajax-updated components do not get rendered into the page.
> After some debugging I found out, that the problem is connected with the "WicketObjects.sizeof" method change in version 6.3.0:
> The method is called in the PageSizeDebugBarPanel for the whole page. That is why the onDetach method is called on every component of the page. Also the onDetach method is called on the HtmlHeaderContainer where the HeaderResponse gets resetted to 'null'. So every HeaderItem added to the HeaderResponse so far gets lost and no "header-contribution" XML-Element is rendered to the AjaxResponse.
> To understand this problem a little bit easier, I will add a quickstart example to this issue. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira