Hey Guys!

I'm currently reworking REST interface and I'm scratching my head looking how we deal with Serializable [1][2]. 

The scenario assumes that server knows that cache stores a Serializable instance and moreover, it knows how to deserialize it (and convert it to XML/JSON, but that's the trivial part). I might be wrong, but I think both assumptions are questionable if not wrong. At first, how to distinguish a serialized instance of a class the server received [3] from a standard byte array? I can imagine someone using "Content-type: application/x-java-serialized-object" but it's very error prone. It also leads to the question number two - how the server will know that type of instance it is? This knowledge is essential for deserialization.

I think the serialization/deserialization should be really done on the client side (but as I mentioned before, maybe I don't see some important use cases). I would like to remove it from refactored REST server.

What do you think?

Thanks,
Sebastian

[1] https://github.com/infinispan/infinispan/blob/master/server/rest/src/main/java/org/infinispan/rest/Server.java#L267-L313
[2] https://github.com/infinispan/infinispan/blob/master/server/rest/src/test/java/org/infinispan/rest/IntegrationTest.java#L636-L639
[3] Note that the input param here is byte[] https://github.com/infinispan/infinispan/blob/master/server/rest/src/main/java/org/infinispan/rest/Server.java#L458
--

SEBASTIAN ŁASKAWIEC

INFINISPAN DEVELOPER