With T358558 we now can validate JSON body fields just like path parameters for form data. But getValidatedBody() will not return the result of that validation, it is still based solely on a BodyValidator.
To fix that, some new logic needs to be introduced into Handler::validate(). It should loop over the validated parameters returned by $restValidator->validateParams, and look up the corresponding parameter definition in the array returned by $this->getParamSettings(). In each parameter definition, it should check if the parameter's soruce is "body". If so, it should be added to $this->validatedBody.