[richfaces-issues] [JBoss JIRA] (RF-11529) a4j:support in rich:datatable JS crash in Chrome with limitToList="true"

Brian Leathem (Updated) (JIRA) jira-events at lists.jboss.org
Thu Oct 13 16:26:16 EDT 2011


     [ https://issues.jboss.org/browse/RF-11529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brian Leathem updated RF-11529:
-------------------------------

    Description: 
I've got a Datatable in which I have a column that contains a tomahawk selectOneRadio. In this selectOneRadio is a a4j:support that has an onclick event to update some components. On this support-tag I had the limitToList-attribute set to true. This works fine in FF and IE, but today I tested it in Chrome and I saw that the Javascript wasn't executed anymore. When I click a radiobutton first, which makes another button in the next column dissapear, all goes well. But when I click another radiobutton that should make the next column button reappear again, it fails. 
I get the following error in chrome:
{quote}
Uncaught Error: Uncaught Error: NOT_SUPPORTED_ERR: DOM Exception 9 3_3_3.Finalorg.ajax4jsf.javascript.AjaxScript.html:121 
{quote}

which points at this line: 
{code}
var importednode=window.document.importNode(newnode,true);
LOG.debug("Replace content of node by replaceChild()");
var oldGetElementById=null;
A4J.AJAX.TestReplacedGetElementByIdVisibility();
if(!A4J.AJAX._testReplacedGetElementByIdVisibility) { 
    LOG.debug("Temporarily substituting document.getElementById() to work around WebKit issue");
    oldGetElementById=document.getElementById;document.getElementById=function(id) {
        var elt=oldGetElementById.apply(document,arguments);
        if (!elt) {
            var id=arguments[0];
            LOG.debug("Element [@id='"+id+"'] was not found in document, trying to locate XPath match");
            try { 
                var result=importednode.ownerDocument.evaluate("//*[@id='"+id+"']",importednode,null,XPathResult.ANY_UNORDERED_NODE_TYPE);
                if(result){elt=result.singleNodeValue;
            }
...
{code}

  was:
I've got a Datatable in which I have a column that contains a tomahawk selectOneRadio. In this selectOneRadio is a a4j:support that has an onclick event to update some components. On this support-tag I had the limitToList-attribute set to true. This works fine in FF and IE, but today I tested it in Chrome and I saw that the Javascript wasn't executed anymore. When I click a radiobutton first, which makes another button in the next column dissapear, all goes well. But when I click another radiobutton that should make the next column button reappear again, it fails. 
I get the following error in chrome: Uncaught Error: Uncaught Error: NOT_SUPPORTED_ERR: DOM Exception 9 3_3_3.Finalorg.ajax4jsf.javascript.AjaxScript.html:121 which points at this line: var importednode=window.document.importNode(newnode,true);LOG.debug("Replace content of node by replaceChild()");var oldGetElementById=null;A4J.AJAX.TestReplacedGetElementByIdVisibility();if(!A4J.AJAX._testReplacedGetElementByIdVisibility){LOG.debug("Temporarily substituting document.getElementById() to work around WebKit issue");oldGetElementById=document.getElementById;document.getElementById=function(id){var elt=oldGetElementById.apply(document,arguments);if(!elt){var id=arguments[0];LOG.debug("Element [@id='"+id+"'] was not found in document, trying to locate XPath match");try{var result=importednode.ownerDocument.evaluate("//*[@id='"+id+"']",importednode,null,XPathResult.ANY_UNORDERED_NODE_TYPE);if(result){elt=result.singleNodeValue;}


    
> a4j:support in rich:datatable JS crash in Chrome with limitToList="true"
> ------------------------------------------------------------------------
>
>                 Key: RF-11529
>                 URL: https://issues.jboss.org/browse/RF-11529
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 3.3.3.Final
>         Environment: Tomcat 7, RichFaces 3.3.3.Final
>            Reporter: Stef Klaassen
>            Priority: Minor
>
> I've got a Datatable in which I have a column that contains a tomahawk selectOneRadio. In this selectOneRadio is a a4j:support that has an onclick event to update some components. On this support-tag I had the limitToList-attribute set to true. This works fine in FF and IE, but today I tested it in Chrome and I saw that the Javascript wasn't executed anymore. When I click a radiobutton first, which makes another button in the next column dissapear, all goes well. But when I click another radiobutton that should make the next column button reappear again, it fails. 
> I get the following error in chrome:
> {quote}
> Uncaught Error: Uncaught Error: NOT_SUPPORTED_ERR: DOM Exception 9 3_3_3.Finalorg.ajax4jsf.javascript.AjaxScript.html:121 
> {quote}
> which points at this line: 
> {code}
> var importednode=window.document.importNode(newnode,true);
> LOG.debug("Replace content of node by replaceChild()");
> var oldGetElementById=null;
> A4J.AJAX.TestReplacedGetElementByIdVisibility();
> if(!A4J.AJAX._testReplacedGetElementByIdVisibility) { 
>     LOG.debug("Temporarily substituting document.getElementById() to work around WebKit issue");
>     oldGetElementById=document.getElementById;document.getElementById=function(id) {
>         var elt=oldGetElementById.apply(document,arguments);
>         if (!elt) {
>             var id=arguments[0];
>             LOG.debug("Element [@id='"+id+"'] was not found in document, trying to locate XPath match");
>             try { 
>                 var result=importednode.ownerDocument.evaluate("//*[@id='"+id+"']",importednode,null,XPathResult.ANY_UNORDERED_NODE_TYPE);
>                 if(result){elt=result.singleNodeValue;
>             }
> ...
> {code}

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

        


More information about the richfaces-issues mailing list