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 (Resolved) (JIRA)" <ji...@apache.org> on 2011/11/24 17:23:40 UTC

[jira] [Resolved] (WICKET-4232) Imroper handling of empty ajax response with empty CDATA text node.

     [ https://issues.apache.org/jira/browse/WICKET-4232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Igor Vaynberg resolved WICKET-4232.
-----------------------------------

    Resolution: Incomplete

closing until more information can be provided
                
> Imroper handling of empty ajax response with empty CDATA text node.
> -------------------------------------------------------------------
>
>                 Key: WICKET-4232
>                 URL: https://issues.apache.org/jira/browse/WICKET-4232
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket, wicket-extensions
>    Affects Versions: 1.4.18
>         Environment: Mac OS 10.4.11 & Safari 4.1.3 and Mac OS 10.5 & Safari 5.
>            Reporter: Alexander Yatsenko
>            Assignee: Igor Vaynberg
>            Priority: Minor
>
> After moving one of items on Palette component at once subsequent ajax requests are impossible due to default's channel busy behavior ("Channel busy - postponing..."). 
> Code tracing has shown that the problem source is possible improper implementation of DOMParser in mentioned browsers which lead to wrong parsing of empty response xml:
> <?xml version="1.0" encoding="UTF-8"?><ajax-response><evaluate><![CDATA[]]></evaluate></ajax-response>, 
> particularly empty text node <!'CDATA[]]> hasn't been parsed. 
> As a result, the processEvaluation function of WicketAjaxCall's object cause exception in the line of code: 
> var text = node.firstChild.nodeValue; 
> (because of absence of child node in evaluate's element).
> As a result, all necessary steps could not be processed and default channel isn't closed by Request object.
> The workaround found to solve this issue is to add the AjaxFormComponentUpdatingBehavior("onchange") to the Recorder element in panel's recorder factory method and override the onUpdate event with appending some none empty string to target object.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira