Parsing goes wrong in case of @validate in combination with a custom validator. The problem is that the $ sign gets stripped (in tags), resulting in a failure of the parseValidatorAnnotation function in TYPO3/CMS/Extbase/Classes/Validation/ValidatorResolver.php. The function is called from the new getMethodValidateAnnotations in the same class.
Apparently this function still uses the tags and not the new annotations approach. The validators array annotations/contains the correct value.
If I dump the ClassSchema I see the following:
[tags] => Array ( [param] => Array (  => \FraJaWeB\FwCore\Domain\Model\User $user  => string $username ) [validate] => Array (  => user \FraJaWeB\FwCore\Domain\Validator\User2Validator ) ) [annotations] => Array ( [validators] => Array (  => $user \FraJaWeB\FwCore\Domain\Validator\User2Validator ) )
[BUGFIX] Fix resolving of method validators
This is a regression bugfix. During the ClassSchema refactoring
the resolving of method validators broke due to stripping of
beginning dollar signs from tags.
Tested-by: TYPO3com <email@example.com>
Reviewed-by: Georg Ringer <firstname.lastname@example.org>
Tested-by: Georg Ringer <email@example.com>
Reviewed-by: Anja Leichsenring <firstname.lastname@example.org>
Tested-by: Anja Leichsenring <email@example.com>
Reviewed-by: Christian Kuhn <firstname.lastname@example.org>
Tested-by: Christian Kuhn <email@example.com>