TYPO3: Oops, an error occured! Validation failed for: YourDomain.com

TYPO3

Heute bin ich beim Einrichten von der Extension Front End User Registration (sr_feuser_register) über eine, mir bisher unbekannte, Fehlermeldung gestolpert. «Oops, an error occured! - Validation failed for: YourDomain.com»

TYPO3 Fehlermeldung: Validation failed for: YourDomain.com

Der Fehler

Im ersten Moment dachte ich, dass es sich dabei um einen Fehler bei der Konfiguration der E-Mailadresse als Benutzernamen handelt. Nach kurzer Recherche konnte ich dieses aber ausschließen und fand heraus, dass die Mail-API von TYPO3 das Problem verursacht.

Weitere Extensions betroffen

Wie ich einigen Foren-Einträgen entnehmen konnte, sind noch weitere Extensions betroffen. Dazu zählen unter anderem das mm_forum, direct_mail und auch powermail. Bei Direct Mail und Powermail ist mir dieses Problem allerdings noch nicht aufgefallen. Zum mm_forum kann ich diesbezüglich nicht viel sagen, da ich dieses nicht im Einsatz habe.

Die Lösung für das Problem

Zunächst reicht es auf die alte Mail-API zurückzugreifen. Hierzu muss man einfach nur den Parameter substituteOldMailAPI im Install-Tool deaktivieren.

Alternativ kann man auch einfach folgende Ziele in der localconf.php im Verzeichnis typo3conf einfügen:

1
$TYPO3_CONF_VARS['MAIL']['substituteOldMailAPI'] = '0';

Update der Extensions

Ob es für alle betroffenen Extensions Updates geben wird und wann diese erscheinen, bleibt abzuwarten. Für mich und das betroffene Projekt reicht das Ganze soweit erstmal aus.

Ich habe mich mit dem Fehler, sowie den Klassen t3lib_htmlmail und t3lib_mail allerdings auch noch nicht wirklich auseinandergesetzt. Wenn hier jemand nähere Infos hat, immer her damit.

Der Vollständigkeit halber:

Die E-Mailadresse als Benutzername verwenden

Weiter oben im Artikel hatte ich erwähnt, dass ich die E-Mailadresse als Benutzernamen verwende. Hier der Vollständigkeit halber noch kurz der dafür nötige Parameter.

Um die E-Mailadresse als Benutzernamen zu verwenden, bzw. besser gesagt die E-Mailadresse automatisch in das Datenbank-Feld für den Benutzernamen zu kopieren, reicht das Setzen des Parameters useEmailAsUsername in den Konstanten der Extension.

Alternativ ergänzt man die Konstanten seines Templates einfach um folgende Zeile:

1
plugin.tx_srfeuserregister_pi1.useEmailAsUsername = 1

Ich hoffe der Artikel hat dem ein oder anderen geholfen. Feedback, Fragen und weitere Tipps sind natürlich in den Kommentaren willkommen. ;-)

FacebookRSS Feeds

6 Kommentare zu “TYPO3: Oops, an error occured! Validation failed for: YourDomain.com”

  1. Nico

    22. August 2011 um 17:31

    Nach einfügen des “substituteOldMailAPI” ist der Bestätigungslink leider nur noch “www.meinedomain.de”

    ;) Irgendwelche Vorschläge?^^

  2. Marcel

    23. August 2011 um 14:08

    Hallo Nico,

    auf Anhieb wüsste ich nicht woran es liegen könnte, werde aber bei Gelegenheit nochmal schauen ob ich was finde. Falls du in der Zwischenzeit was finden solltest, würde mich freuen, wenn du deine Lösung hier postest.

    Gruß Marcel

  3. Tobias

    24. August 2011 um 17:09

    Das Problem taucht auf, wenn ihr Absendernamen vergebt, die nicht in Hochkommata eingeschlossen sind. Beispiel:

    Name = Max Mustermann.GmbH
    Adresse = max.mustermann@mm.de

    Intern wird daraus:

    Max Mustermann.GmbH

    In der Klasse t3lib_mail_Rfc822AddressesParser (t3lib/mail) kann eine solche Adresse nicht validiert werden. Ich hatte das Problem bei Extension sr_feuser_register.

    Zur Lösung habe ich im TypoScript den Namen in Anführungszeichen gesetzt.

  4. Tobias

    24. August 2011 um 17:10

    Anscheinend werden hier Tags entfernt. Intern wird daraus:
    Max Mustermann.GmbH (Ohne die Leerzeichen)

  5. Marcel

    24. August 2011 um 18:11

    Danke Tobias für den Tipp. :) Ist mir noch nicht aufgefallen, muss ich morgen erstmal bei meinen Projekten prüfen.

  6. Nico

    25. August 2011 um 08:28

    Ich habs abonniert ;) Das Problem lag an den Konstanten.

    plugin.tx_srfeuserregister_pi1.confirmPID = …
    plugin.tx_srfeuserregister_pi1.editPID = …
    plugin.tx_srfeuserregister_pi1.registerPID = …
    plugin.tx_srfeuserregister_pi1.pid = …

    Wenn hier wird nicht überall der Ordner mit den Benutzerdatensätzen eingetragen…

    Das war der Fehler