Why would reportDefinition be null when it is non-persisted?  The reportDefinition.id should be null, but the report definition itself needs to exist, no?