Re: XML parsing from within a VB server component

Michael Kay (M.H.Kay@eng.icl.co.uk)
Mon, 28 Sep 1998 11:20:23 +0100


-----Original Message-----
From: Billow, Danny J <Billow.Danny@emeryworld.com>
To: 'xml-dev@ic.ac.uk' <xml-dev@ic.ac.uk>
Date: 25 September 1998 22:45
Subject: XML parsing from within a VB server component

>Can it be done?
Yes.

>Is there any documentation for msxml.dll?
I wouldn't advise using msxml, it's out of date and
Microsoft don't appear to have any plans for it. Use any of
the excellent Java-based SAX parsers available.

So how to access a Java parser from a VB (COM) environment?
I haven't tried doing this directly at the SAX level, though
it's probably possible if you understand the intricacies of
COM. What I did was to write a Java wrapper class around the
SAXON library (http://home.iclweb.com/icl2/mhkay/saxon.html)
and register this as a COM object using Microsoft's javareg
utility. I designed the wrapper class to have a very simple
interface: no exceptions, no callbacks, only strings and
integers as parameters; I'm sure I restricted it
unnecessarily but I had had problems bridging more complex
interfaces so I was overcautious. The COM wrapper class is
part of the SAXON distribution.

As an alternative to Microsoft's javareg you ought to be
able to use Sun's ActiveX Bridge but I spent a week trying
to get it to work, while javareg worked for me first time.

>Is this module used by the browser only or can I use it in
my server
>component?

I've only tried using this server-side, generally from
VBScript on ASP pages. I haven't had time to explore the
complexities of client-side operation.

Mike Kay