I upgraded my GWT from 2.1 to 2.3 (beta) and it seems there is an incompatibility with Gilead.
More specifically, java.sql.Timestamp types will not serialize correctly. Deserialization on the client results in a SerializationException. The reason is that the Timestamp that was serialized on the server doesn't match the type signature that the client expects for deserialization.
After quite a bit of digging, I discovered that the Timestamp_FieldSerializer that ships with Gilead conflicts with one that was apparently introduced in GWT 2.2 or 2.3. Type signatures for classes with custom serializers appear to depend (recursively) on the type signature for the serializer class. So, on the server (where Gilead is loaded) the class loader picks up the Gilead serializer which influences the generated type signature for Timestamp classes. However, on the client side, when the GWT compiler emits the rpc whitelist, Gilead is not loaded, so the class loader picks up the custom serializer shipped with the new version of GWT. Hence, the two type signatures don't match.
Ok, that's the long explanation. Thankfully, the fix is easy.
Just remove the custom serializers from the Gilead distribution. It worked for my project.