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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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()...