У меня есть функция vbscript, которая открывает xml-файл с сервера и выполняет xpath для поиска данных.На всех dev и промежуточных серверах все работает нормально.На Live-сервере файл найден, но xpath ничего не возвращает.
Я убедился, что файлы на 100% одинаковы, но проблема не решена.Любые предложения по отладке были бы хорошими.
ОБНОВЛЕНИЕ Поэтому, когда я запускаю нижеприведенное на ненадежных серверах и получаю следующий вывод: (### - это данные, которые я недисплей для вопроса)
True // item [@id = '###'] / name [lang ('En')]: 1
на живом сервере:возвращено:
True // item [@id = '###'] / name [lang ('En')]: 0
Функция отладки
Function DebugXMLFile(CVID, CPath, Item,lang)
Dim xmldoc, currNode
Set xmldoc = CreateObject("Msxml2.DOMDocument.6.0")
xmldoc.async = False
Set fso = CreateObject("Scripting.FileSystemObject")
fileExists = fso.FileExists(CPath & CVID & "\data.xml")
if fileExists then
if xmldoc.load(CPath & CVID & "\data.xml") then
xmldoc.setProperty "SelectionLanguage", "XPath"
DebugXMLFile = fileExists & "//item[@id = '" & Item & "']/name[lang('" & lang & "')]: " & (xmldoc.selectNodes("//item[@id = '" & Item & "']/name[lang('" & lang & "')]").length)
else
DebugXMLFile = xmldoc.parseError.errorCode
end if
else
DebugXMLFile = xmldoc.parseError.errorCode
end if
Set xmldoc = Nothing
Set fso = Nothing
End Function