Yes. The session state was being carried between unrelated requests and the AddressBook test spotted the anomaly.
As discussed on yesterday's chat, I rebuilt Axis using AspectJ and then added the following aspect to debug this problem: (See attached file: SessionDebug.java) I started out with a much simpler aspect, but that gave too much log data, so I narrowed down the scope of the 'pointcut' and printed some input parameters and return values. The log from this is attached for anyone who is interested: (See attached file: ajlog2). It was fairly easy to spot the session instances going in and out of the hashtable and work out what was going on. The nice part about using AspectJ was that it provided a full trace of the methods issued by SimpleAxisServer without me adding any code into the class (which I would later have to take out). Also, the aspect was very quick to write compared to the corresponding amount of debug code. For more on AspectJ, see aspectj.org. Its open source (Mozilla Public License) and freely downloadable. Finally, here's a diff of build.xml to rebuild Axis with AspectJ in case anyone else wants to try it. You also have to put the relevant jars in the ant /lib directory: (See attached file: build.xml.diff) Glyn Glen Daniels <gdaniels@macro To: "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]> media.com> cc: Subject: RE: cvs commit: 06/03/02 14:11 xml-axis/java/src/org/apache/axis/transport/http Please respond SimpleAxisServer.java to axis-dev Nice catch. What this what was causing the AddressBook test to fail in some cases? > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] > Sent: Wednesday, March 06, 2002 8:55 AM > To: [EMAIL PROTECTED] > Subject: cvs commit: xml-axis/java/src/org/apache/axis/transport/http > SimpleAxisServer.java > > > glyn 02/03/06 05:54:59 > > Modified: java/src/org/apache/axis/transport/http > SimpleAxisServer.java > Log: > Prevent cookie2 from being incorrectly carried from request > to request. > > Revision Changes Path > 1.54 +2 -2 > xml-axis/java/src/org/apache/axis/transport/http/SimpleAxisServer.java > > Index: SimpleAxisServer.java > =================================================================== > RCS file: > /home/cvs/xml-axis/java/src/org/apache/axis/transport/http/Sim > pleAxisServer.java,v > retrieving revision 1.53 > retrieving revision 1.54 > diff -u -r1.53 -r1.54 > --- SimpleAxisServer.java 26 Feb 2002 15:23:22 -0000 1.53 > +++ SimpleAxisServer.java 6 Mar 2002 13:54:59 -0000 1.54 > @@ -235,7 +235,7 @@ > // wipe cookies if we're doing sessions > if (doSessions) { > cookie.delete(0, cookie.length()); > - cookie2.delete(0, cookie.length()); > + cookie2.delete(0, cookie2.length()); > } > authInfo.delete(0, authInfo.length()); > > @@ -443,7 +443,7 @@ > .append(cooky) > .append("\r\nSet-Cookie2: ") > .append(cooky); > - // OH, THE HUMANITY! yes this is inefficient. > + // OH, THE HUMILITY! yes this is inefficient. > out.write(cookieOut.toString().getBytes()); > } > > > > >
SessionDebug.java
Description: Binary data
ajlog2
Description: Binary data
build.xml.diff
Description: Binary data