[TYRUS-43] MessageHandler.CharacterStream onMessage method called for every received partial string Created: 23/Oct/12  Updated: 08/Mar/13  Resolved: 08/Mar/13

Status: Resolved
Project: tyrus
Component/s: None
Affects Version/s: None
Fix Version/s: 1.0-b13, 1.0

Type: Bug Priority: Critical
Reporter: Martin Matula Assignee: Pavel Bucek
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
depends on TYRUS-82 Reader support Resolved
duplicates TYRUS-116 Implement proper handling of Reader a... Resolved


see BlockingStreamingTextTest - it is currently ignored, as it breaks due to this bug.

The client sends partial strings, and on the server side, it seems that for every partial string received, a new call to onMessage() method is made. I believe this is wrong (flawed) as the CharacterStream.onMessage() method has no means to determine when the last part of the string came - so IMO should receive the full string (i.e. keep receiving string parts until the last is received) rather than invoking new handler for every part.

Once this bug is fixed, the @Ignore annotation should be removed from the test so that it runs as part of the build.

Comment by dannycoward [ 26/Oct/12 ]

The endpointwrapper was creating a new blocking adapter for each partial message. Now this is fixed.

The same issue held for blocking binary data, which the fix for this also fixes.

I am holding off closing this issue until I've seen it work in hudson. Its working great in local and workspace tests.

Comment by Pavel Bucek [ 05/Feb/13 ]

still not resolved in trunk.

Generated at Sun Aug 02 17:19:06 UTC 2015 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.