Isn't there any workaround to this situation? In my application, a
database update operation depends on whether the message was delivered
to the client or not, so in that scenario, I would never know if the
message was delivered. And even if onError() is called later, I can
never know which message caused IOException.

On Thu, May 12, 2016 at 1:09 PM, Mark Thomas <ma...@apache.org> wrote:
> On 12/05/2016 08:24, Tejas Nandanikar wrote:
>> Thank you for your quick reply.
>> So consider a case where client abruptly loses internet connection.
>> In that scenario, the sendText() would return normally as the server
>> hasn't received 'close' packet from the client, did I get it right?
>
> Assuming that the message was small enough to fit completely into the
> network buffers, yes.
>
> Mark
>
>>
>> On Thu, May 12, 2016 at 12:43 PM, Mark Thomas <ma...@apache.org> wrote:
>>> On 12/05/2016 06:16, Tejas Nandanikar wrote:
>>>> I am using Apache Tomcat 8.0.33.
>>>> I was going through Java documentation about RemoteEndpoint.Basic
>>>> which says that sendText(String text) blocks until all of the message
>>>> has been transmitted.
>>>> But I noticed that when the client loses internet connection and
>>>> sendText() method is called on the server side, it doesn't thrown an
>>>> IOException immediately and the method returns normally.
>>>> IOException is thrown later and the onError() method is called. Is
>>>> this a normal behaviour?
>>>
>>> Yes.
>>>
>>>> Shouldn't the sendText() method block until
>>>> all the message has been transmitted successfully or throw an
>>>> IOException immediately if there's any problem?
>>>
>>> Only if the server knows there is a problem at that point. Depending on
>>> how the client disconnects, there server might not know and the message
>>> will sit in the network buffer until the network stack figures out that
>>> the client has gone away.
>>>
>>> Mark
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to