]
Bela Ban resolved JGRP-2480.
----------------------------
Resolution: Done
ObjectMessage: better marshalling
---------------------------------
Key: JGRP-2480
URL:
https://issues.redhat.com/browse/JGRP-2480
Project: JGroups
Issue Type: Enhancement
Reporter: Bela Ban
Assignee: Bela Ban
Priority: Major
Fix For: 5.0.0.Beta2
Currently, {{ObjectMessage}} accepts only objects of type {{SizeStreamable}} and wraps
everything else into {{ObjectWrapper}} instances.
This means that primitive types (e.g. "{{7}}" or "{{hello world}}")
will be wrapped, too. The disadvantage of {{ObjectWrapper}} is that it performs _eager
marshalling_, creating an unwanted byte[] array before the message is actually marshalled.
On the receiver side, another byte[] array will be created before the actual unmarshalling
starts.
Solution: accept primitive types (e.g. {{int}}, {{Integer}}, {{String}}, {{AsciiString}},
{{byte[]}} etc) directly, without wrapping them into an {{ObjectWrapper}}.