The problem seems to be that the SubmissionResultParser tries to parse json with gson library, but the gson can't write the validationErrors map member in ValidationResultImp .
The simplest way to fix this issue is just set the validationErrors member as transient. We tried it and it seemed to work. Another way that this could probably be fixed is set validations member in SubmissionResult as transient.
The problem seems to be that the SubmissionResultParser tries to parse json with gson library, but the gson can't write the validationErrors map member in ValidationResultImp .
The simplest way to fix this issue is just set the validationErrors member as transient. We tried it and it seemed to work. Another way that this could probably be fixed is set validations member in SubmissionResult as transient.
This bug was discovered by @juvester .