axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erik Onnen <>
Subject RE: Parsing stuff
Date Thu, 19 Apr 2001 15:05:13 GMT
I was wondering the same thing myself. My understanding is that it is OK to
use threads that operate in an app server _outside_ the context of an EJB.
In other words, if your app server is also your web server, it is Ok to use
threading in the servlets, for example something like soap message routing.
But, I wonder how a multithreaded parser would respond inside the context of
an EJB. Most curious to hear the resolution.

-----Original Message-----
From: Sanjiva Weerawarana []
Sent: Thursday, April 19, 2001 10:59 AM
Subject: Re: Parsing stuff

Aren't there major issues with app servers and thread management? I
thought that part of the server side programming model was that
user application components are not spsed to be creating threads ..
the app server does thread creation and mgmt.

I believe Xalan does something like this with DTM. I wonder how they
addressed this issue.


----- Original Message -----
From: "Glen Daniels" <>
To: <>
Sent: Wednesday, April 18, 2001 7:15 PM
Subject: Parsing stuff

> I've got a version of the multi-thread SAX parse working, though it needs
> bit of cleanup.  It's mostly a proof-of-concept.
> I'm going to see if I can make some improvements, clean it up a bit, and
> post it to the list tomorrow for review.
> Basically, it does exactly what we talked about.  When you create a
> around an InputSource, it spawns a thread which parses the <envelope>
> element, makes sure it looks OK, and then suspends.  When anyone asks for
> something from the Message (i.e. getHeaderByName(QName)), the parsing
> wakes up and runs until it finds the desired thing or runs out of XML
> (initially this just means getting to the end of the headers).  As it
> it creates SOAPHeader objects, which contain records of the SAX events
> inside them, suitable for replaying to any ContentHandler.  Meanwhile the
> other thread (the one that made the getHeaderByName() call) blocks until
> parse is complete.
> Glen Daniels
> Macromedia
> Engineering Manager
>                                 Building cool stuff for web developers

View raw message