setErrorForComponentID()
Die Systemfunktion 'sysLib.setErrorForComponentID()' ordnet eine Nachricht einem Feld in einem JSF-Handler zu.
Die Zuordnung basiert auf der ID einer Komponente auf der Webseite. Wenn ein JSF-Handler die Funktion aufruft, wird die Nachricht an die Position einer Nachricht oder Nachrichtenkennung in JavaServer Pages (JSP) gestellt.
Die Nachricht wird angezeigt, wenn die zugehörige Webseite angezeigt wird. Sie können diese Funktion als Teil einer Prüfroutine oder für Informationsnachrichten verwenden.
Wenn eine Gültigkeitsprüffunktion die Funktion 'sysLib.setErrorForComponentID()' aufruft, wird die Webseite automatisch erneut angezeigt, wenn die Funktion beendet wird.
Sie können einer Komponente mehrere Nachrichten zuordnen. Wenn der JSF-Handler eine forward-Anweisung ausführt, gehen die Nachrichten verloren.
Syntax
sysLib.setErrorForComponentID(
Komponenten-ID STRING in,
Nachrichtenschlüssel STRING in
[, Nachrichteneinfügung STRING in])
- Komponenten-ID
- Die ID einer Komponente auf der Webseite, der Sie die Nachricht zuordnen wollen. Die ID hat das Format Formularname:Komponentenname, wobei Formularname die ID des Formulars ist, das die Komponente enthält, und Komponentennamen die ID der Komponente ist.
- Nachrichtenschlüssel
- Bei der Eingabe kann es sich um eine beliebige Variable oder einen beliebigen Ausdruck handeln, die/der mit dem Typ STRING zuordnungskompatibel ist. Der Nachrichtenschlüssel liefert den Schlüssel zum Nachrichtenressourcenpaket oder zur Eigenschaftendatei, das/die zur Ausführungszeit verwendet wird. Wird für den Schlüssel kein Wert angegeben, ist die Nachricht eine Verkettung sämtlicher Nachrichten in der Datei.
- Nachrichteneinfügungen
- Bei der Eingabe kann es sich um eine(n) oder mehrere Variablen oder Ausdrücke handeln, die mit dem Typ STRING zuordnungskompatibel sind. Alle
Nachrichteneinfügungen werden in die Ausgabenachricht eingefügt. Das
Substitutionssymbol im Nachrichtentext ist eine ganze Zahl in geschweiften Klammern, wie im folgenden Beispiel:
Ungültiger Dateiname {0} - Im Gegensatz zur Funktion 'sysLib.getMessage()', die eine Feldgruppe von Einfügungen akzeptiert, können in der Funktion 'sysLib.setErrorForComponentID()' nur einzelne Parameter für Ersetzungen verwendet werden.
- Nachrichtentext
- Bei der Eingabe kann es sich um eine beliebige Variable oder einen beliebigen Ausdruck handeln, die/der mit dem Typ STRING zuordnungskompatibel ist. Dies ist der Text einer Nachricht, die der Webseite selbst zugeordnet ist.
Beispiel
Das folgende Beispiel zeigt einen Eintrag in der Nachrichtendatei 'errorMessages_en_US.properties':
badname = The name you entered, {0}, is not valid.
userName STRING = getUserName(); // Aufforderung zur Eingabe
rc = validateUserName(userName);
if (rc < 0)
SysLib.setErrorForComponentID( "form1:CustName",
SysLib.getMessage( "badname", [ userName ] ) );
end
Kompatibilität
| Plattform | Problem |
|---|---|
| COBOL-Generierung | Die Funktion 'setErrorForComponentID()' wird nicht unterstützt. |
| JavaScript-Generierung | Die Funktion 'setErrorForComponentID()' wird nicht unterstützt. |