While using a general data transport format instead of Java object serialization is great for most applications it cannot replace all usecases.
JVM based distributed grid computing services use Java object serialization to distribute queries throughout the grid. This allows users to write their queries as arbitrary Java code which will be executed on every node without having to deploy the code on every node.