]
Brian Leathem updated RF-11529:
-------------------------------
Fix Version/s: 3.Future
Component/s: third-party
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)
Components: third-party
Affects Versions: 3.3.3.Final
Environment: Tomcat 7, RichFaces 3.3.3.Final
Reporter: Stef Klaassen
Priority: Minor
Fix For: 3.Future
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: