You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Peter Davison (JIRA)" <de...@tapestry.apache.org> on 2007/11/09 20:05:51 UTC
[jira] Created: (TAPESTRY-1899) XTile doesn't handle response
payloads larger than 4096 bytes in firefox
XTile doesn't handle response payloads larger than 4096 bytes in firefox
------------------------------------------------------------------------
Key: TAPESTRY-1899
URL: https://issues.apache.org/jira/browse/TAPESTRY-1899
Project: Tapestry
Issue Type: Bug
Components: Contrib
Affects Versions: 4.1.2
Environment: Client: Windows XT/Firefox 2.0.0.9
Server: Windows XT/JBoss 4.0.4
Tapestry: 4.1.2
Reporter: Peter Davison
The extractData method of the XTile component doesn't handle AJAX responses larger than 4096 bytes when using the XMLHttpRequest object - as opposed to the ActiveXObjects.
The problem is that extractData - as defined in XTile.script - only looks at the firstChild of the <sp> element as shown in the following code snippet:
function extractData(response)
{
var xml = response.responseXML.documentElement;
var dataList = new Array();
if (xml) dataList = xml.getElementsByTagName('sp');
var dataLen = dataList.length;
var data = new Array();
for (i = 0; i < dataLen; i++) {
var child = dataList[i].firstChild;
if (child)
data[i] = child.data;
else
data[i] = "";
}
return data;
}
The following version of extractData fixes the problem by iterating over all children of the <sp> node:
function extractData(response)
{
var xml = response.responseXML.documentElement;
var dataList = new Array();
if (xml) {
dataList = xml.getElementsByTagName('sp');
}
var dataLen = dataList.length;
var data = new Array();
for (i = 0; i < dataLen; i++) {
var children = dataList[i].childNodes;
data[i] = "";
for (j = 0; j < children.length; j++) {
var child = children[j];
if (child) {
data[i] += child.data;
}
}
}
return data;
}
Tested in both IE and Firefox and this change works properly in both cases.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org