I think it's because of the support for caching. When using a persistent cache, or any caching that distributes object via network you need to have a way of making sure the objects can be transported in a common format which, in this case, is Java serialization.