There are two issues:
1. The hasStream method always returned false. 2. There wasn't proper handling for BinaryType in outputting values. The java serialized value, not the simple byte value was presented.