Hallo,
ich hoffe ihr könnt mit weiterhelfen bei meinem Problem vor dem ich grad sitze.
Ich habe ein Reihe von Variablen die auf dem Server liegen, das Einlesen dieser ist kein Problem. Nun will ich aber diese ganzen Variablen in Form einer XML-Datei dem Benutzer zum Download bereitstellen. Um Zeit beim Erzeugen der Datei zu sparen habe ich ein rohe XML_Datei auf dem Server in der die Struktur bereits festgelegt ist und noch die Variablen eingetragen werden sollen.
Die Rahmenbedingungen sind folgende: ASP auf Serverseite mit JScript und der Server hat als BS Win CE.
Ich habe erstmal einen kleinen Testaufbau versucht mit dem erstmal nur ein Wert geschrieben werden soll, nur leider kommt es hier schon zur Exception auf Serverseite: "Microsoft JScript runtime error: '800a01ad'"
Der Code zum Client sieht so aus:
function Einlesen() {
if (window.XMLHttpRequest) {
httpPro = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
httpPro = new ActiveXObject("Microsoft.XMLHTTP");
}
else
alert("Ihr Browser unterstützt kein Ajax! Es ist nicht möglich Variablen automatisch zu aktualisieren. Wahrscheinlich ist Ihre Brwoserversion zu alt.");
if (httpPro != null) {
var url = "ExterneParametrierung.asp";
httpPro.onreadystatechange=Einlesen2;
httpPro.open("GET", url, true);
httpPro.send(null);
}
}
function Einlesen2() {
try {
if (httpPro.readyState == 4) {
tmp = httpPro.responseText;
var docxml;
if (typeof ActiveXObject != "undefined") {
docxml = new ActiveXObject("msxml2.DOMDocument.3.0");
docxml.load("/doc/test.xml")
} else {
var parser = new DOMParser();
docxml = parser.parseFromString(document.getElementById("test1"), "text/xml");
}
var n1 = docxml.getElementsByTagName("test")[0];
}
}
catch (e) {
httpPro.abort();
return;
}
}
auf Serverseite so:
<%@language="JavaScript"%>
<%
var result = "";
var oDs = new ActiveXObject("msxml2.DOMDocument.3.0");
oDs.async = false;
oDs.resolveExternals = false;
oDs.validateOnParse = false;
var path = Server.MapPath("/doc/ParametrierungTemperatur.xml");
if (oDs.load(path) == true) {
var xmldoc = oDs.SelectNodes("astA_Ventil");
Response.ContentType = "text/xml";
result = xmldoc.Item[0].NodeName;
Response.Write(result);
}
%>
die Variante
var oDs = Server.CreateObject("MSXML2.DOMDocument.3.0");
geht leider auch nicht mit der gleichen Meldung.
Wisst ihr vllt. eine Lösung für das Porblem oder könnt mir sagen wie ich anders auf die XML-Datei auf dem Server zugreifen kann??
MfG Henne