Do my Java classes have to implement Serializable to be a Flash Remoting service?
If you’re creating a JavaBean, then you must implement Serializable; you do not need to use the Serializable interface for plain old Java objects. If the JavaBean service adapter in the gateway finds that your targeted service is a Java class that is Serializable — that it implements Serializable and all its fields are in fact Serializable and therefore capable of object streaming through Http sessions — it makes a blanket assumption that you wish the service to be stateful to your client. So it will stash the instance in your HTTP session. If the targeted service is not serializable, no state is maintained and the service is treated as a stateless Java class. To avoid circumventing the resource optimizations in modern garbage collectors, no object pooling is performed in the Java adapter, either.