Zum Inhalt springen

@ignorevalidation wird teilweise ignoriert

Erstellt am 18. September 2013 · 1 Antwort · letzte Antwort am 18. September 2013

Tags: Frage

Freezle ·

Hey Leute,

mir ist etwas Komisches aufgefallen, was ich mir nicht erklären kann. Ich schreibe eine Extbase-Extension für Typo3 6.1 und benutze somit den neuen Property-Mapper.

Folgenden Code habe ich für eine Action

/**
         * 
         * @param \string $password
         * @param \string $password2
         * @validate $password xxxx\xxx\Domain\Validator\PasswordValidator
         * @param \xxx\xxx\Domain\Model\User $user
         * @ignorevalidation $user
         * @param \string $hash
         */
        public function forgotPasswordSetPasswordAction($password, $password2,$user,$hash) {
            \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump("test");
        }

Ich möchte das User-Objekt nicht validieren lassen, weder als gesamtes Modell noch die einzelnen Eigenschaften.
Was nun passiert ist aber komisch: wenn die Password-Validation zuschlägt, wird das vorhergehende Formular samt der richtigen Fehlermeldung angezeigt. Gleichzeitig werden aber auch die Fehlermeldungen der User-Model-Validation angezeigt.
Wenn die Passwort-Prüfung durchgeht, wird richtigerweise die "forgotPasswordSetPassword"-Action gerufen.
Die Validation vom User-Objekt scheint also wirklich ausgeschaltet zu sein. Aber trotzdem werden die isValid()-Methoden vom User-Validator durchlaufen und die Errors mit addError dem ErrorContainer hinzugefügt.
Wie kann das sein?

Viele Grüße
Freezle