Salut,
abeytom wrote:
> Salut,
>
> Please find my response below.
>
> 1. The method com.sun.grizzly.tcp.http11.GrizzlyOutputBuffer.close() is
> being invoked from the method
> com.sun.grizzly.comet.CometHandler.onInterrupt(CometEvent).
>
> 2. I do the tests from the browser. I have attached the war file and source
> code in my first mail. What i do is , I open 3-4 browsers(index.html) and
> refresh(F5) one by one. At some point I stop getting response from the
> server.
Wow I've missed the attachment.
>
> When I hit refresh button in the browser, in the method
> GrizzlyAdapter.service(Request, Response) a new GrizzlyRequest and
> GrizzlyResponse objects are created. In this case everything works as
> expected. Also CometHandler.onInterrupt() will be invoked for the existing
> response which will in turn invoke GrizzlyOutputBuffer.close().
So far so good.
> But sometimes new GrizzlyRequest and GrizzlyResponse objects will NOT be
> created and It will use the existing ones from res.getNote(ADAPTER_NOTES).
OK that one is strange as if the Request/Response are available, it
means the response has been resumed.
> So In this case the GrizzlyOutputBuffer instance will be the one on which
> close() method has been invoked some time back.
Agree.
>
> I didnt see the method GrizzlyAdapter.afterService(Request, Response)
> getting invoked in this flow which we talked about. However afterService()
> is invoked if we try to POST a new Chat Message; a normal doPost().
Ok looking at it. Thanks for the detailed information.
-- Jeanfrancois
>
> Thanks,
> Tom