I had to serialize a complex object, but one of its component was non-serializable ( a third party graph object), so I created a custom serializable version of this Graph class
Lists.transform() does perform lazily as you suspected. You could do one of
Lists.newArrayList(Lists.transform(...))
or, if you want an immutable version,
ImmutableList.copyOf(Lists.transform(...))
and then serialize the resulting list.