Error with XML DOM parsing the Request object

P

P James

Hi,

My project has been running for 4 years in ASP/IIS (originally on NT4, then
on Win2003 as of 1 year ago), using the following code to parse the request
object using the XML DOM:

Set oASPRequest = GetObjectContext.Item("Request")
Set oRequestDOM = CreateObject("MSXML.DOMDocument")
If Not oRequestDOM.Load(oASPRequest) Then Err.Raise 64000, , "ASP
Request object could not be parsed."

....and suddenly on 12/23 it started producing an error on the third line of
code above.

I'm not at work right now, so I can't get at the error information available
from the DOM, so I will reply to this post with that information. I'm
wondering if anyone knows what might be causing this to suddenly fail. I
will be looking into what, if any, security hot-fixes were applied to the
server recently.

If anyone can shed any light on this, I would sincerely appreciate it.

Thanks,
PJ
 
P

P Jamesen

Just wanted to add the error number that the parser is reporting in the
..parseError property: -2147467259 Google and MSDN Library don't seem to
yield any useful information about this issue. So I'm still completely
stumped. Any help is greatly appreciated.

PJ
 
B

Bob Barrows [MVP]

P said:
Hi,

My project has been running for 4 years in ASP/IIS (originally on
NT4, then on Win2003 as of 1 year ago), using the following code to
parse the request object using the XML DOM:

Set oASPRequest = GetObjectContext.Item("Request")
Set oRequestDOM = CreateObject("MSXML.DOMDocument")
If Not oRequestDOM.Load(oASPRequest) Then Err.Raise 64000, , "ASP
Request object could not be parsed."

...and suddenly on 12/23 it started producing an error on the third
line of code above.

I'm not at work right now, so I can't get at the error information
available from the DOM, so I will reply to this post with that
information. I'm wondering if anyone knows what might be causing
this to suddenly fail. I will be looking into what, if any, security
hot-fixes were applied to the server recently.

If anyone can shed any light on this, I would sincerely appreciate it.

Thanks,
PJ

Sorry, I'd like to help, but i have never seen this technique used in asp.
What advantage do you gain by using this technique?

I would suggest you be more explicit about your instantiation of the
domdocument:
Set oRequestDOM = CreateObject("MSXML2.DOMDocument")

Also, use a parse error object to get information about any errors that
occur during the parsing:

bStatus= oRequestDOM.loadxml(oASPRequest)

if bStatus = false then
Set xPE = oRequestDOM.parseError
strMessage = "errorCode = " & xPE.errorCode & vbCrLf
strMessage = strMessage & "reason = " & xPE.reason & vbCrLf
strMessage = strMessage & "Line = " & xPE.Line & vbCrLf
strMessage = strMessage & "linepos = " & xPE.linepos & vbCrLf
strMessage = strMessage & "filepos = " & xPE.filepos & vbCrLf
strMessage = strMessage & "srcText = " & xPE.srcText & vbCrLf
Err.Raise 64000,,strMessage
exit sub
end if

Bob Barrows
 
P

P Jamesen

Thanks for the response. I followed both of your suggestions and
unfortunately I still get the error. Here's what I get from the parseError
object:

?o.errorCode
-2147467259
?o.reason
Unspecified error
?o.line
0
?peo.linepos
0
?peo.srctext
<empty string>

Still banging my head on it... Thanks for all insights!

PJ
 
B

Bob Barrows [MVP]

I inadvertantly said you should use loadxml instead of Load (copy-and-paste
issue) You didn't change "Load" to "LoadXML" did you? LoadXML expects a
string argument. oASPRequest is an object, not a string (does this object
have a ToString() method?)
 
B

Bob Barrows [MVP]

P said:
Hi,

My project has been running for 4 years in ASP/IIS (originally on
NT4, then on Win2003 as of 1 year ago), using the following code to
parse the request object using the XML DOM:

Set oASPRequest = GetObjectContext.Item("Request")
Set oRequestDOM = CreateObject("MSXML.DOMDocument")
If Not oRequestDOM.Load(oASPRequest) Then Err.Raise 64000, , "ASP
Request object could not be parsed."

...and suddenly on 12/23 it started producing an error on the third
line of code above.

I'm not at work right now, so I can't get at the error information
available from the DOM, so I will reply to this post with that
information. I'm wondering if anyone knows what might be causing
this to suddenly fail. I will be looking into what, if any, security
hot-fixes were applied to the server recently.

If anyone can shed any light on this, I would sincerely appreciate it.

Thanks,
PJ

Oh wait - you're doing this in a COM+ object? You should go to a more
relevant newsgroup: one of the vb groups I would think ...
 
P

P Jamesen

Hi,

Thanks for the insights. Turns out it was code elsewhere that interrogated
the asp request object's form fields. Apparently after you do that, you can
no longer have the xml dom's load method take the asp request object as
input. When I removed the code that examined the request.forms collection,
the code below that parses the request began to work again. Very strange,
to me at least.

Thanks for the troubleshooting tips.

PJ
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,019
Latest member
RoxannaSta

Latest Threads

Top