Guest tiani Posted November 28, 2006 Share Posted November 28, 2006 Hey guys just jouined in from the UN.I'm currently developping an application in ASP for viewing NGOs and I'm using a XML file to store temporary recordsets before adding them to the database (ACCESS 2003). When I try to view the xml file using XSL on the same page i get: Microsoft JScript runtime error '800a138f' 'objXMLDoc.documentElement' is null or not an object /ASP Project/VerifyPerson.asp, line 168 here is the code: (in Jscript)<% //before the form the nodes creation and insertionif ( Request.Form("moreORG") == "Yes" ){ // 1) To check whether the user has already pressed the submit button var submit = Request.Form("submit").Count; if( submit > 0 ){ var xmlDoc=Server.CreateObject("MICROSOFT.FreeThreadedXMLDOM"); xmlDoc.async="false"; xmlDoc.load(Server.MapPath("Data/organization.xml")); var nodeList = xmlDoc.getElementsByTagName("organizations"); if(nodeList.length > 0){ var parentNode = nodeList(0) ; var orgNode = xmlDoc.createElement("Organization"); var orgnameNode = xmlDoc.createElement("name"); var orgAddrNode = xmlDoc.createElement("address"); var orgTelNode = xmlDoc.createElement("telephone"); var orgFaxNode = xmlDoc.createElement("fax"); var orgEmailNode = xmlDoc.createElement("email"); var unOrgNode = xmlDoc.createElement("UN"); orgnameNode.text = Trim(subConvert(request.form("affiliAt"))); orgAddrNode.text = Trim(subConvert(request.form("addrorg"))); orgTelNode.text = Trim(request.form("phone")); orgFaxNode.text = Trim(request.form("fax")); orgEmailNode.text = request.form("e_mail"); unOrgNode.text = request.form("UN"); // 6) Attach the nodes to the parent node (Person) parentNode.appendChild(orgNode); orgNode.appendChild(orgAddrNode); orgNode.appendChild(orgTelNode); orgNode.appendChild(orgFaxNode); orgNode.appendChild(orgEmailNode); orgNode.appendChild(unOrgNode); // 7) Now save the nodes to the file xmlDoc.save(Server.MapPath("Data/organization.xml")); }//if nodelength }// if submit }// request for more // the form is above and in HTML // This part is used to display the data in a table via XSL var objXMLDoc = Server.CreateObject("MICROSOFT.FreeThreadedXMLDOM"); objXMLDoc.async = false; objXMLDoc.load(Server.MapPath("Data/Organization.xml")); var xsl=Server.CreateObject("MICROSOFT.FreeThreadedXMLDOM"); xsl.async = false; xsl.load(Server.MapPath("Data/Organization.xsl")); var xmlQuery="//organization"; var docHeadlines=objXMLDoc.documentElement.selectNodes(xmlQuery); var numNodes; numNodes=docHeadlines.length; var nn; for(var i=0;i<numNodes;i++){ nn = docHeadlines.nextNode(); Response.Write(nn.transformNode(xsl)); }%>the XSL sheet:<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"><!-- Note that I have specified the default values for the parameters. If no values are passed in, these will be used --><xsl:param name="sortBy" select="'name'"/><xsl:param name="strXPath" select="//organization"/><xsl:template match="/"> <xsl:apply-templates select="$strXPath"> <xsl:sort select="*[name()=$sortBy]" order="ascending"/> </xsl:apply-templates></xsl:template><xsl:template match="organization"> <tr> <td><font face="verdana" size="2"><xsl:value-of select="name"/></font></td> <td><font face="verdana" size="2"><xsl:value-of select="address"/></font></td> <td><font face="verdana" size="2"><xsl:value-of select="telephone"/></font></td> <td><font face="verdana" size="2"><xsl:value-of select="fax"/></font></td> <td><font face="verdana" size="2"><xsl:value-of select="email"/></font></td> <td><font face="verdana" size="2"><xsl:value-of select="UN"/></font></td> </tr></xsl:template></xsl:stylesheet>and finally the XML file:<?xml version="1.0" encoding="ISO-8859-1"?><!-- Written by Sonu Kapoor .:sonu@codefinger.de:. www.codefinger.de --><organizations> <organization><name>AESES</name><address>settat</address><telephone></telephone><fax></fax><email></email><UN>No</UN></organization></organizations>Thanx guys Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now