Wait - are you using 3.2 or 3.3 ???
OutputBuffer is in 3.3 ( development code, unstable, etc) !
Costin
> . isUsingWriter = false
> . isStarted = false
> . writer = null
> . oBuffer = not null
>
> (bBuffer is no longer used, oBuffer is used instead).
>
> Not content with that information, I also implemented a 'getCount()' method
> on OutputBuffer. I proceeded to print out the count on the Response.finish()
> method, only to find out that the length is zero.
>
> ----
>
> Further, I proceeded to instrument the OutputBuffer class to see what
> the conditions are for the buffer state at the time of invocation of
> finish(). The output indicates that it is in INITIAL_STATE (on which the
> OutputBuffer performs a NO-OP).
>
> I also instrumented OutputBuffer.recycle() to see when that happens too.
>
> ----
>
> Interestingly enough, I can see that the behavior is not totally consistent.
> For example, my application has a servlet called 'simpleLogViewer' which
> is expected to generate output to a specific frame in the HTML page.
>
> There was a case in my run/debug/instrumentation that it managed to
> generate output, while in the rest of them it produced no output.
>
> In general, in all those cases where output is not generated, I see that
> the ServletWriterFacade.println() method gets invoked, but there is
> no corresponding HttpResponseAdapter.doWrite() call.
>
> In such circumstances, the Response.finish() method is invoked, but the
> buffer has already been reset (it is in INITIAL_STATE).
>
> Arieh
|