Jump to content

XSLT Parameter to ASP.NET Variable


kwilliams

Recommended Posts

I'm trying to pass an XSLT parameter into an ASP.NET page, and back again, but it's not getting passed for some reason. If someone could let me know what I'm doing wrong, and possible help me out with a solution, it would be greatly appreciated. Thanks.XML DOC:

<?xml version="1.0" encoding="ISO-8859-1"?><feedback>	<feedback id="1">  <fname>FIRSTNAME</fname>  <lname>LASTNAME</lname>	</feedback></feedback>

XSLT DOC:

<?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:output method="xml" encoding="UTF-8" indent="yes"/><!-- PAGE-SPECIFIC PARAMETERS --><xsl:param name="fname_val" select="''" /><xsl:param name="lname_val" select="''" /><!-- FORM VALIDATION VARIABLES --><xsl:variable name="fname_msg">Must enter between 1 and 30 characters</xsl:variable><xsl:variable name="lname_msg">Must enter between 1 and 30 characters</xsl:variable>	<xsl:template match="/">  <form method="post" action="feedback.aspx"> 	 <table class="navyblueborder" width="100%">    <xsl:for-each select="feedback/feedback">   	 <tr>      <td class="whiteheader" bgcolor="#333366" colspan="2">Feedback Form</td>   	 </tr>   	 <tr>      <td bgcolor="#ccccff"><strong>First Name:</strong></td>      <td bgcolor="#ccccff"><input type="text" id="txtfname" name="txtfname" value="fname_test" size="30" maxlength="30" tabindex="1" />      <font color="red">*      <xsl:if test="$fname_val != ''">     	 <xsl:value-of select="$fname_msg" />      </xsl:if>      </font>      </td>   	 </tr>   	 <tr>      <td bgcolor="#ccccff"><strong>Last Name:</strong></td>      <td bgcolor="#ccccff"><input type="text" id="txtlname" name="txtlname" value="lname_test" size="30" maxlength="30" tabindex="2" />      <font color="red">*</font></td>   	 </tr>    </xsl:for-each> 	 </table>  </form>	</xsl:template></xsl:stylesheet>

ASP.NET DOC (feedback.aspx):

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" Debug="true" %><%	'Declare XML and XSL file paths	Dim xmlURL As String, xslURL As String	xmlURL = "feedback.xml"	xslURL = "feedback.xsl"	'Load XML	Dim xml = Server.CreateObject("MSXML2.DOMDocument.3.0")	xml.async = false	xml.load(xmlURL)		'Load XSL	Dim xsl = Server.CreateObject("MSXML2.DOMDocument.3.0")	xsl.async = false	xsl.load(xslURL)		'Pull in form data	Dim fname_form As String = trim(Request.Form("txtfname")) 'REQUIRED	Dim lname_form As String = trim(Request.Form("txtlname")) 'REQUIRED		'Test pulled in form data	Response.Write("Form FName: " + fname_form + "<br />") 'TEST	Response.Write("Form LName: " + lname_form + "<br />") 'TEST		'Pull in XSL parameters	Dim fname_param = xsl.selectSingleNode("//xsl:param[@name='fname_val']")	fname_param.SetAttribute("select", "'" & fname_form & "'")	Response.Write("XML FName: " + fname_param + "<br />") 'TEST		Dim lname_param As String = xsl.selectSingleNode("//xsl:param[@name='lname_val']")	fname_param.SetAttribute("select", "'" & lname_form & "'")	Response.Write("XML LName: " + lname_qs + "<br />") 'TEST%>

RESULTING ERROR:Exception Details: System.NullReferenceException: Object variable or With block variable not set.Source Error:Line 49: Dim fname_param = xsl.selectSingleNode("//xsl:param[@name=fname_val]")Line 50: fname_param.SetAttribute("select", "'" & fname_form & "'") '<!---***ERROR IS ON THIS LINE***Line 51: Response.Write("XML FName: " + fname_param + "<br />") 'TESTLine 52:

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...