I'm planning to file a bug report, but I wanted to make sure I'm sane first and that 
the bug is what I think it is.

The handler defined in org.apache.axis.handlers.LogHandler attempts to log the elapsed 
time of processing.  To do so, it stores the start time in a class field called "long 
start".  It is my understanding that this will collide with other simultaneous 
messages, since there is not a new instance of the handler created for each message.  
(It will work in the general case where messages are getting processed slowly or just 
once).

The proper way to do this is to store the start time in the MessageContext itself via 
setProperty method.

If I am incorrect, then the manner in which LogHandler remembers the filename 
parameter (which *should* persist between requests) is incorrect, because this too is 
stored in a class variable.  Either way, there is a bug.

I'm bringing this up because when I went to write my own handler, I used this as a 
starting point and it took me almost an hour to figure out how it was working (until I 
realized that it wasn't).  So hopefully I can save some frustrations and headaches.

Reply via email to