Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Javascript > How to read dynamically generated XML with Javascript and ActiveX XMLHTTP object?

Reply
Thread Tools

How to read dynamically generated XML with Javascript and ActiveX XMLHTTP object?

 
 
mikeyjudkins@yahoo.com
Guest
Posts: n/a
 
      02-09-2005
Ive been banging my head on the wall for hours with this one, hopefully
someone will know what Im doing wrong here :\

The Goal:
I have an xml file that is generated on the fly via JSP which I want to
load into a Microsoft.XMLHTTP ActiveX object and manipulate via
javascript on the client side. Data is retreived from the server at the
request of the javascript without having to reload the page.

The Problem:
For the JSP to dynamically output xml, the file must have the extension
JSP, which is set to the mime type of dynamo-internal/html on the
server side (as we are using ATG Dynamo). But the javascript on the
client side will not retrieve anything unless the file extension is
..xml (or the mime type is recognized as text/xml). So the only way I
can get it to work is to change the extension to .xml, which then of
course amkes it so that the server will not process any of the JSP
code.

Ive tried to override the mime type within the javascript, using the
setRequestHeader method after opening the file, but no luck. A call to
alert the value of req.responseXML.xml after the send() turns up empty.
Ive only gotten it to work if I use a static xml file in palce of the
jsp. Sample of the javascript code is below:

if (window.XMLHttpRequest) {
// branch for native XMLHttpRequest object - THIS WORKS
req = new XMLHttpRequest();
req.overrideMimeType("text/xml");
req.onreadystatechange = processReqChange;
req.open("GET", "models.jsp?cId=300006&mId=TAC24", true);
req.send(null);
alert(req.responseXML.xml); //this gives me the resulting xml file
} else if (window.ActiveXObject) {
// branch for IE/Windows ActiveX version - NOT WORKING
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET", "models.jsp?cId=300006&mId=TAC24", true);
req.setRequestHeader("Content-Type","text/xml");
req.send();
alert(req.responseXML.xml); //this gives me nothing
}
}

In looking at the following example the Microsoft gives (bottom of
page):

http://support.microsoft.com/default...;EN-US;Q290591

I just dont see what could be going wrong here.


I should note that I successfully got the script to work using the
XMLHttpRequest object and the overrideMimeType() method. This works
with FireFox and I think some Mozilla clients, but not with the all
important IE5, which instead uses the XMLHTTP ActiveX control.

Thanks for any help!

Mike

 
Reply With Quote
 
 
 
 
Martin Honnen
Guest
Posts: n/a
 
      02-09-2005


http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:


> For the JSP to dynamically output xml, the file must have the extension
> JSP, which is set to the mime type of dynamo-internal/html on the
> server side (as we are using ATG Dynamo). But the javascript on the
> client side will not retrieve anything unless the file extension is
> .xml (or the mime type is recognized as text/xml). So the only way I
> can get it to work is to change the extension to .xml, which then of
> course amkes it so that the server will not process any of the JSP
> code.


But a JSP sends an HTTP response and you simply need to make sure the
JSP sets the right HTTP response header e.g.
Content-Type: application/xml
or
Content-Type: text/xml
Ask in a JSP group on how to do that, or probably any advanced JSP
tutorial will tell you how to set the Content-Type header for the HTTP
response the JSP sends.


--

Martin Honnen
http://JavaScript.FAQTs.com/
 
Reply With Quote
 
 
 
 
mikeyjudkins@yahoo.com
Guest
Posts: n/a
 
      02-09-2005
Can't believe that hadnt occured to me. Its now working

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: How include a large array? Edward A. Falk C Programming 1 04-04-2013 08:07 PM
Msxml*.XMLHTTP vs. Microsoft.XMLHTTP yawnmoth Javascript 11 11-09-2006 08:44 PM
MIME type in the XMLHTTP activeX object wh173b0y@gmail.com Javascript 0 11-29-2005 03:56 PM
How to read dynamically generated XML with Javascript and ActiveX XMLHTTP object? mikeyjudkins@yahoo.com XML 5 09-28-2005 12:01 PM
ActiveX apologetic Larry Seltzer... "Sun paid for malicious ActiveX code, and Firefox is bad, bad bad baad. please use ActiveX, it's secure and nice!" (ok, the last part is irony on my part) fernando.cassia@gmail.com Java 0 04-16-2005 10:05 PM



Advertisments