If you are fortunate enough to be using JDK 7, the newly available Objects class is the obvious (at least to me) choice for implementing the “common” Java object ...
The final example in my blog post Groovy 1.8 Transformations: @ToString, @EqualsAndHashCode, and @TupleConstructor demonstrated using the @ToString, @EqualsAndHashCode, and @TupleConstructor ...