how to debug a server program
how to debug a server program
am 29.10.2007 18:21:00 von bettys
I have a testing client program, the purpose is send a xml file to a server
program, and the server return another xml message. So I wrote a testing
server program the simple one and make sure the communication is fine. After
that I started to program more complicated server program, since there are
many compliation error. The client program keep displaying:
The remote server returned an invalid statuscode: #8221;500 Internal Server
Error
Is there any way to display a detailed error message about the server
program in the web browser? So I can quickly debugging it and fix it, not to
have to waiting for an email from the program?
Thanks.
<%
Set xmlDom=CreateObject("Microsoft.XMLDOM")
XMLDom.async =False
xmlDom.load Server.MapPath("0925SelectTest.xml")
DataToSend = xmlDom.xml
dim xmlhttp
set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.send xmlDom.xml
if(Err <> 0) then
Response.Write("An error occured when retrieving data from an external
source.
")
Response.Write(Err.Description)
Response.End
end if
On error goto 0
'if request is not Ok then display detailed message about the request
problem
if(xmlHttp.status <> 200) then
Response.Write("The remote server returned an invalid statuscode: #8221;"
& _
xmlHttp.status & " " & xmlHttp.statusText)
Response.End
end if
'
--
Betty
Re: how to debug a server program
am 29.10.2007 23:12:16 von Anthony Jones
"c676228" wrote in message
news:8DCD0B94-342C-40E4-B909-3CB46265A758@microsoft.com...
> I have a testing client program, the purpose is send a xml file to a
server
> program, and the server return another xml message. So I wrote a testing
> server program the simple one and make sure the communication is fine.
After
> that I started to program more complicated server program, since there are
> many compliation error. The client program keep displaying:
> The remote server returned an invalid statuscode: #8221;500 Internal
Server
> Error
>
> Is there any way to display a detailed error message about the server
> program in the web browser? So I can quickly debugging it and fix it, not
to
> have to waiting for an email from the program?
>
> Thanks.
>
> <%
> Set xmlDom=CreateObject("Microsoft.XMLDOM")
Use MSXML2.DOMDocument.3.0,
>
> XMLDom.async =False
> xmlDom.load Server.MapPath("0925SelectTest.xml")
> DataToSend = xmlDom.xml
Delete the line above, DataToSend is not needed.
>
> dim xmlhttp
> set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
> xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false
> xmlhttp.setRequestHeader "Content-Type",
"application/x-www-form-urlencoded"
Your not sending Form data so delete the above request header.
> xmlhttp.send xmlDom.xml
The line above should be:-
xmlhttp.send xmlDom
XmlHtttp know how to send a DOM and will set the appropriate Content-Type
"text/xml" for you.
> if(Err <> 0) then
> Response.Write("An error occured when retrieving data from an external
> source.
")
> Response.Write(Err.Description)
Response.Wrte Err.Description
Don't use parentheses when call procedures that don't return a value.
> Response.End
Don't do Response.Ends unless you really have to.
> end if
> On error goto 0
> 'if request is not Ok then display detailed message about the request
> problem
> if(xmlHttp.status <> 200) then
> Response.Write("The remote server returned an invalid statuscode:
#8221;"
> & _
> xmlHttp.status & " " & xmlHttp.statusText)
If the server is sending any detail about what went wroing it will be in the
responseText. In fact it's likely to be a complete HTML page so you might
consider:-
Response.Write xmlHttp.responseText
> Response.End
Delete the above line.
> end if
>
--
Anthony Jones - MVP ASP/ASP.NET
Re: how to debug a server program
am 29.10.2007 23:22:01 von bettys
Thank you so much Anthony. I will try this.
"Anthony Jones" wrote:
> "c676228" wrote in message
> news:8DCD0B94-342C-40E4-B909-3CB46265A758@microsoft.com...
> > I have a testing client program, the purpose is send a xml file to a
> server
> > program, and the server return another xml message. So I wrote a testing
> > server program the simple one and make sure the communication is fine.
> After
> > that I started to program more complicated server program, since there are
> > many compliation error. The client program keep displaying:
> > The remote server returned an invalid statuscode: #8221;500 Internal
> Server
> > Error
> >
> > Is there any way to display a detailed error message about the server
> > program in the web browser? So I can quickly debugging it and fix it, not
> to
> > have to waiting for an email from the program?
> >
> > Thanks.
> >
> > <%
> > Set xmlDom=CreateObject("Microsoft.XMLDOM")
>
> Use MSXML2.DOMDocument.3.0,
>
> >
> > XMLDom.async =False
> > xmlDom.load Server.MapPath("0925SelectTest.xml")
>
> > DataToSend = xmlDom.xml
>
> Delete the line above, DataToSend is not needed.
>
> >
> > dim xmlhttp
> > set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
> > xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false
>
> > xmlhttp.setRequestHeader "Content-Type",
> "application/x-www-form-urlencoded"
>
> Your not sending Form data so delete the above request header.
>
> > xmlhttp.send xmlDom.xml
>
> The line above should be:-
>
> xmlhttp.send xmlDom
>
> XmlHtttp know how to send a DOM and will set the appropriate Content-Type
> "text/xml" for you.
>
>
> > if(Err <> 0) then
> > Response.Write("An error occured when retrieving data from an external
> > source.
")
> > Response.Write(Err.Description)
>
> Response.Wrte Err.Description
>
> Don't use parentheses when call procedures that don't return a value.
>
> > Response.End
>
> Don't do Response.Ends unless you really have to.
>
>
> > end if
> > On error goto 0
> > 'if request is not Ok then display detailed message about the request
> > problem
> > if(xmlHttp.status <> 200) then
> > Response.Write("The remote server returned an invalid statuscode:
> #8221;"
> > & _
> > xmlHttp.status & " " & xmlHttp.statusText)
>
> If the server is sending any detail about what went wroing it will be in the
> responseText. In fact it's likely to be a complete HTML page so you might
> consider:-
>
> Response.Write xmlHttp.responseText
>
>
> > Response.End
>
> Delete the above line.
>
>
> > end if
> >
>
>
>
> --
> Anthony Jones - MVP ASP/ASP.NET
>
>
>