My Oracle Support Banner

The "javax.websocket.RemoteEndpoint.Async#sendBinary()" Unable To Return Before The Message Is Transmitted (Doc ID 2648370.1)

Last updated on OCTOBER 09, 2023

Applies to:

Oracle WebLogic Server - Version 12.1.3.0.0 to 12.2.1.4.0 [Release 12c]
Information in this document applies to any platform.

Symptoms

The following RemoteEndpoint.Async#sendBinary()'s document says as "This method returns before the message is transmitted".

https://docs.oracle.com/javaee/7/api/javax/websocket/RemoteEndpoint.Async.html#sendBinary-java.nio.ByteBuffer-

But the "javax.websocket.RemoteEndpoint.Async#sendBinary()" does NOT return before the message is transmitted. For example, the "RemoteEndpoint.Async#sendBinary()" method unable to return to the application from WLS control if the network is disconnected. So it looks like the application hangs up at calling the "RemoteEndpoint.Async#sendBinary()".

The below is a sample thread stack when a sample code which name is WebSocketSample#echo() calls "RemoteEndpoint.Async#sendBinary()" method. The sample application stacks like below when the network is disconnected:

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.