PRB: Load-Methode schlägt fehl, wenn beim Laden von XML-Datei über HTTP

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 281142
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Bei Verwendung derAuslastungMethode der MSXML.DOMDocument oder Msxml2.DOMDocument-Objekt eine XML-Datei über HTTP zu laden, schlägt die Methode fehl, und diese Fehlermeldung angezeigt:
-2146697209 - Sind keine Daten verfügbar für die angeforderte Ressource.

Lösung

Verwenden Sie die ServerXMLHTTP-Komponente (in MSXML 3.0 eingeführt) zum Laden des Dokuments. Verwenden Sie diesetPropertyMethode des Msxml2.DOMDocument Festlegen derServerHTTPRequest-Eigenschaft auf True. Der Wert für dieServerHTTPRequest-Eigenschaft gibt an, dass Sie die "threadsicher" verwenden sollServerXMLHTTPKomponente zum Laden des Dokuments.ServerXMLHTTPunterstützt nur synchrone laden. Aus diesem Grund dieasynchroneEigenschaft muss festgelegt werden, wenn der Wert falseServerHTTPRequestwird auf True festgelegt.

Weitere Informationen

Dieses Problem tritt nicht auf, wenn dieAuslastungMethode verweist auf einen Dateipfad. Dieses Problem kann auftreten, wenn das DOM-Dokument eine XML-Datei über HTTP lädt, wenn MSXML in einer serverseitigen oder clientseitige Multi-Core-Umgebung betrieben wird.

Schritte zum Reproduzieren des Verhaltens

Der folgende VBScript-Code bewirkt, dass die Fehlermeldung auftreten:
<%Option Explicit%>
<%Response.Buffer = False%>
<html>
<head>
</head>
<body>

<%
Dim oXML, oXMLError, ReturnValue, x
Set oXML = Server.CreateObject("MSXML2.DOMDocument")
oXML.async = False

ReturnValue = oXML.Load("http://myserver/myxmlfile.xml")
Response.write "Result of load method is =" & ReturnValue & "<br>"
If ReturnValue = False Then
	Set oXMLError = oXML.ParseError
	Response.Write "&#xa0;&#xa0;" & oXMLError.ErrorCode & " - " & oXMLError.Reason & "  URL=" & oXMLError.URL & 

"<br>"
	Set oXMLError = Nothing
End If

Response.Write oxml.parseError.reason

For x = 0 to oxml.childNodes.length 
	Response.Write "Node " & x & ".  "
Next 

Set oXML = Nothing
%>
</body>
</html>
				
Festlegen derSetPropertyMethode True, fügen Sie folgende Zeile in den vorhergehenden Code direkt nach die Zeile: oXML.async = False:
oxml.setProperty "ServerHTTPRequest", true				
Für Server, die in einem Intranet ausgeführt werden dieServerHTTPRequestEigenschaft ist erforderlich, der WinHTTP Proxy Konfigurations-Dienstprogramm Proxycfg.exe auszuführen. Sie können diese Einstellungen nicht mithilfe der Systemsteuerung konfigurieren.

Derzeit steht das Tool Proxycfg nur durch die folgenden Servicepacks oder Software installieren:
  • Windows Server 2003 (alle Editionen)
  • Windows XP Service Pack 1 (SP1)
  • Windows 2000 Service Pack 3 (SP3) oder höher
  • SharePoint Portal Server
Weitere Informationen über das Ausführen des Dienstprogramms "Proxycfg.exe" finden Sie in der Datei "Readme.txt", die mit den Download oder der Microsoft XML 3.0-SDK enthalten ist. Nach der Ausführung des Tools "Proxycfg.exe" und die Registrierung zu aktualisieren, können die vorherigen Registrierungseinstellungen wiederhergestellt werden.

Wenn anonymer Zugriff im virtuellen Verzeichnis mit die ASP-Seite, die die XML-Datei geladen wird, stellen Sie sicher, dass das für den anonymen Zugriff verwendete Konto ein Domänenkonto. Standardmäßig wird Microsoft Internet Information Server (IIS) dieses Konto zu einem lokalen Server-Konto wie IUSR_MACHINENAME. Dieses Konto besitzt möglicherweise keine ausreichenden Rechte, um die XML-Datei, die auf dem anderen Server befindet.
 
Wenn der IIS-Server nicht Microsoft Internet Explorer 5.01 Service Pack 2 (SP1) oder eine höhere Version installiert haben, wird die folgende Fehlermeldung beim Versuch, die ASP-Seite zugreifen:

Fehler 'ASP 0115'
Unerwarteter Fehler
/MyVirtualDirectory/MyASPPage.ASP
In einem externen Objekt ist ein abfangbarer Fehler aufgetreten. Das Skript kann nicht ausgeführt werden.

Informationsquellen

Microsoft XML 3.0 Software Development Kit

Eigenschaften

Artikel-ID: 281142 - Geändert am: Donnerstag, 6. Januar 2011 - Version: 1.0
Keywords: 
kbprb kbmt KB281142 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 281142
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com