Struts2 verwaltet automatisch Konvertierungs- und Validierungsfehler, die während der Formularverarbeitung auftreten. Wenn ein Fehler auftritt, wird ein INPUT-Ergebnis zurückgegeben, anstatt eine Ausnahme auszulösen. Dadurch können Benutzer Eingabefehler korrigieren, ohne den Anwendungsfluss zu unterbrechen.
Konvertierungsfehler
Parameters Interceptor übernimmt die Konvertierung von Formularparametern in die entsprechenden Datentypen (z. B. String). zu Ganzzahl). Wenn die Konvertierung fehlschlägt, wird der ConversionErrors-Map des ActionContext ein Feldfehler hinzugefügt.
Validierungsfehler
Validation Interceptor führt für die Aktion definierte Validierungsregeln aus. Wenn ein Validierungskriterium fehlschlägt, werden Feldfehler zur fieldErrors-Map des ActionContext hinzugefügt.
Nach der Konvertierung und Validierung prüft der Workflow Interceptor, ob Feldfehler vorhanden sind. Wenn Fehler gefunden werden, wird ein INPUT-Ergebnis zurückgegeben. Dieses Ergebnis umfasst automatisch Fehlermeldungen und die vom Benutzer übermittelten Originalwerte, um sicherzustellen, dass der Benutzer die Fehler anzeigen und seine Eingaben korrigieren kann.
Um die automatische Fehlerbehandlung zu aktivieren, stellen Sie sicher, dass die Folgende Interceptoren sind in der richtigen Reihenfolge im Custom Stack enthalten:
Wenn ein Benutzer ein alphabetisches Zeichen in ein Formularfeld eingibt, das als Ganzzahl definiert ist, gibt das Framework beim Abrufen des Werts Null zurück. Dies liegt daran, dass die Getter-Methode den Standardwert für eine Ganzzahl (0) zurückgibt, da sie keinen String in ein Int-Feld setzen kann.
Struts2 löst keine Ausnahme für die Konvertierung oder aus Validierungsfehler, da sie als Eingabefehler gelten. Stattdessen gibt es ein INPUT-Ergebnis zurück und fügt der Feldfehlerzuordnung Fehlermeldungen hinzu, die der Benutzer bearbeiten kann.
Das obige ist der detaillierte Inhalt vonWie geht Struts2 mit Konvertierungs- und Validierungsfehlern bei der Formularverarbeitung um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!