VBScript Can not Select XML nodes

JoydayGob

New Member
I am trying to Select nodes from some webservice response XML to no avail. For some reason I am able to select the root node ("xmldata") however, when I try to drill deeper("xmldata/customers") everything is returned empty! Below is the a sample of the XML that is returned by the webservice.\[code\]<xmldata> <customers> <customerid>22506</customerid> <firstname>Jim</firstname> <issuperadmin>N</issuperadmin> <lastname>Jones</lastname> </customers></xmldata>\[/code\]and here is the code I am trying to select customerid, firstname, and lastname;\[code\]' Send the XmloXMLHttp.send Xml_to_Send' Validate the Xmldim xmlDocset xmlDoc = Server.CreateObject("Msxml2.DOMDocument")xmlDoc.load (oXMLHttp.ResponseXML.text)if(len(xmlDoc.text) = 0) then Xml_Returned = "<B>ERROR in Response xml:<BR>ERROR DETAILS:</B><BR><HR><BR>" end ifdim nodeListSet nodeList = xmlDoc.SelectNodes("xmldata/customers")For Each itemAttrib In nodeList dim custID, custLname, custFname custID =itemAttrib.selectSingleNode("customerid").text custLname =itemAttrib.selectSingleNode("lastname").text custFname =itemAttrib.selectSingleNode("firstname").text response.write("News Subject: " & custID) response.write("<br />News Subject: " & custLname) response.write("<br />News Date: " & custFname)Next\[/code\]The result of the code above is zilch! nothing is written to the page. One strange thing is if I select the root element and get its length as follows;\[code\]Set nodeList = xmlDoc.SelectNodes("xmldata")Response.Write(nodeList.length) '1 is written to page\[/code\]It correctly determines the length of 1. However when I try the same with the next node down as follows;\[code\]Set nodeList2 = xmlDoc.SelectNodes("xmldata/customers")Response.Write(nodeList.length) '0 is written to page\[/code\]It returns a length of 0. WHY!Please note that this isn't the only way I have attempted to access the values of these nodes. I just can not work out what I am doing wrong. Could someone please help me out. Cheers.
 
Back
Top