http://stackoverflow.com/questions/7606244/how-should-my-rails-before-validation-callbacks-handle-bad-data

I got around this by letting the error slip through on the before_validation call (set_default_user), since it will be catched on the actual validation (ensure_owner_type). Not pretty but apparently a convention according to the SO user