To fix this, I did some cleaning in the way exceptions are handled
- Created UnknownPropertyException, which extends ValidationException, to easily route that case and translate it to an IllegalArgumentException at top level method exit.
- All RTE thrown by getters in the validated beans will be wrapped in a ValidationException.
- Changed method unrecoverableValidationError(..) to build exceptions instead of throwing them.
- Created a set of tests that verify that the methods in ClassValidator honor the exception contract in the spec.
3 more tests pass.