Классическая отладка ASP - отвратительная тема, ради которой миллионы других тонких клеток мозга были принесены в жертву за эти годы. Даже с инструментами, предназначенными для разработки и / или с поддержкой классического ASP, включение отладки может быть хитрым .
Если ваши усилия являются относительно небольшими разовыми вещами, как предполагает ваш вопрос, то, вероятно, не имеет смысла тратить много времени на настройку и настройку расширенной среды отладки ASP / сценариев. Вместо этого, согласно ответу Пита Дункансона , просто внедрите некоторые операторы Response.Write в свой сценарий и выясните, где и почему он не работает по старинке. Однако Пит не заметил, что вам нужно будет включить обработчик ошибок VBScript (на самом деле, проглотитель ошибок), чтобы избежать выброса необработанного исключения, в результате чего IIS будет обслуживать 500.
Я установил и запустил следующий код, и он работал нормально (то есть без ошибок). URL-адрес XML указывал на простой файл в том же виртуальном каталоге на локальном компьютере, что и страница ASP, и содержал XML-файл, найденный в ответе AnthonyWJones . (Кстати, я понятия не имею, как вы так хорошо отформатировали VBScript в исходном вопросе, поэтому моя копия выглядит довольно плохо.)
<%
On Error Resume Next ' prevent tossing unhandled exception
Dim URL, objXML, value
URL = "http://someserver.com/xml"
Set objXML = Server.CreateObject("MSXML2.DOMDocument.6.0")
Response.Write "after CreateObject: " & Err.Description & "<br>"
objXML.setProperty "ServerHTTPRequest", True
Response.Write "after setProperty: " & Err.Description & "<br>"
objXML.async = False
Response.Write "after async: " & Err.Description & "<br>"
objXML.Load URL
Response.Write "after Load: " & Err.Description & "<br>"
Response.Write objXML.parseError.reason
Response.Write "after write of parseError.reason: " & Err.Description & "<br>"
value = objXML.documentElement.Text
Response.Write "after setting value: " & Err.Description & "<br>"
set objXML = nothing
%>
<%= value %>
Откройте это в IE или Firefox, и если все пойдет хорошо, вы должны увидеть это:
after CreateObject:
after setProperty:
after async:
after Load:
after write of parseError.reason:
after setting value:
The value
Конечно, все не будет хорошо, иначе вас бы здесь не было, и в этом случае вы должны увидеть детали ошибки в какой-то момент после одного из значений Response.Write. Вот некоторая дополнительная информация об объекте VBScript Err.
Удачи!