This was a self-inflicted wound. I reused the CachedOutputStream in my
own code and did not understand when I was not supposed to call close.

On Wed, Oct 27, 2010 at 7:27 PM, Benson Margulies <[email protected]> wrote:
> A return value from an operation of mine includes an MTOM-optimized
> byte[], organized via Aegis binding a DataHandler. It's the only
> attachment, so we get the full optimization treatment: a stream that
> is directly reading the socket.
>
> In one entirely repeatable case, I get an EOFException that I can't
> yet explain.
>
> The backtrace is below, trying to read just the first two bytes.
>
> the actual stream is a DelegatingInputStream, boundaryFond true,
> pbAmount 2048. The PushbackInputStream under it has pos=2048.
>
>
> ObjectInputStream$PeekInputStream.readFully(byte[], int, int) line: 2280
> ObjectInputStream$BlockDataInputStream.readShort() line: 2749
> ObjectInputStream.readStreamHeader() line: 779
> ObjectInputStream.<init>(InputStream) line: 279
> CrossdocCorefBatch.readSomething(Class<T>, InputStream) line: 177
> CrossdocCorefBatch.access$3(CrossdocCorefBatch, Class, InputStream) line: 175
> CrossdocCorefBatch$JugCorefDocDb.readDoc(String) line: 62
>

Reply via email to