[XML DOM & IE] FreeThreadedDocument
Bonjour,
J'ai une erreur qui vient d'apparaître suite à une modification de ma fonction de chargement de document XML. Je passe maintenant par un XMLHttpRequest dont voici le code :
Code:
1 2 3 4 5 6
| function getXMLbyRequest (cXPathString) {
var objXMLHTTP = new XMLHttpRequest();
objXMLHTTP.open("GET", cXPathString, false);
objXMLHTTP.send(null);
return objXMLHTTP.responseXML;
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| // OOO-
if (ie5) {
xslArbreDoc0 = new ActiveXObject(FDSMSXML2);
xslArbreDoc1 = new ActiveXObject(FDSMSXML2);
xslArbreDoc2 = new ActiveXObject(FDSMSXML2);
} else if (moz) {
xslArbreDoc0=document.implementation.createDocument("", "", null);
xslArbreDoc1=document.implementation.createDocument("", "", null);
xslArbreDoc2=document.implementation.createDocument("", "", null);
}
// -OOO
xslArbreDoc0.validateOnParse=false;
xslArbreDoc0.async = false;
xslArbreDoc1.validateOnParse=false;
xslArbreDoc1.async = false;
xslArbreDoc2.validateOnParse=false;
xslArbreDoc2.async = false;
// OOO-
xslArbreDoc0 = getXMLbyRequest(ARB0XSL3);
xslArbreDoc1 = getXMLbyRequest(ARB1XSL3);
xslArbreDoc2 = getXMLbyRequest(ARB2XSL3);
if (ie5) {
var xslt0 = new ActiveXObject(TPLMSXML2);
var xslt1 = new ActiveXObject(TPLMSXML2);
var xslt2 = new ActiveXObject(TPLMSXML2);
alert("ok1");
try {
xslt0.stylesheet = xslArbreDoc0;
alert("ok2");} catch (e) {alert(e.message);}
xslt1.stylesheet = xslArbreDoc1;
xslt2.stylesheet = xslArbreDoc2;
PxslArbreDoc0 = xslt0.createProcessor();
PxslArbreDoc1 = xslt1.createProcessor();
PxslArbreDoc2 = xslt2.createProcessor();
} else if (moz) {
PxslArbreDoc0 = new XSLTProcessor();
PxslArbreDoc1 = new XSLTProcessor();
PxslArbreDoc2 = new XSLTProcessor();
PxslArbreDoc0.importStylesheet(xslArbreDoc0);
PxslArbreDoc1.importStylesheet(xslArbreDoc1);
PxslArbreDoc2.importStylesheet(xslArbreDoc2);
}
// -OOO
... |
Le catch me renvoie le message suivant : "Le document de feuille de style XSL doit être sans thread afin d'être utilisé par l'objet XSLTemplate."
J'ai pourtant déclaré ce doc en FreeThreaded (en vert) et je ne comprends pas le lien avec ma fonction getXMLbyRequest()...