title: Why EJB need to implement serializable interface?
body: <p>Is there any reason why EJB classes need to be serializable?
  I've heard it has something to do with the fact that RMI is being used under the hood. I know how RMI (remote method invocation) works, there's a remote object registered on the server side and only the stub of remote object is sent to the client, <strong>not</strong> the whole object.</p>
  
  <p>So in RMI applications the methods of remote object need to take arguments and return values that are serializable, as they are being sent over the network, but not the remote object itself.</p>