Umgebung OS : macOS Hight Sierra Version10.13.2 Eclipse : Version: Neon.3 Release (4.6.3) GlassFish : 4.1.2 JSF : 2.2 JDK : 1.8
inputPassword.xhtml
<Kürzung>
<h:head>
<title>Eingabebildschirm</title>
<h:outputStylesheet library="css" name="base.css"/>
</h:head>
<body>
<h:form>
<h:outputLabel>Bitte geben Sie das Passwort ein.</h:outputLabel>
<br />
<h:inputSecret id="password" value="#{passwordBean.password}">
<f:validateRequired />
<f:validateLength minimum="3" maximum="10" />
<f:validator validatorId="passwordValidator" />
</h:inputSecret>
<h:message for="password" errorClass="error" />
<br />
<h:outputLabel>Schon zur Bestätigung Bitte geben Sie es einmal ein.</h:outputLabel>
<br />
<h:inputSecret id="rePassword" value="#{passwordBean.kakuninPassword}">
<f:validateRequired />
</h:inputSecret>
<h:message for="rePassword" errorClass="error" />
<br />
<h:commandButton value="Senden" action="#{passwordBean.onClickSend}" />
</h:form>
</body>
</html>
base.css
@CHARSET "UTF-8";
.error {
color: red;
}
PasswordValidator.java
<Kürzung>
/**Benutzerdefinierter Validator für den Passworteingabebildschirm. */
@FacesValidator(value = "passwordValidator")
public class PasswordValidator implements Validator {
private static final String KINSHI = "password";
@Override
public void validate(FacesContext context, UIComponent component, Object value)
throws ValidatorException {
String inputedValue = (String) value;
if (inputedValue.equals(KINSHI)) {
FacesMessage errorMessage = new FacesMessage(KINSHI + "Kann nicht verwendet werden.");
throw new ValidatorException(errorMessage);
}
}
}
Wie mit dem Entwicklungstool des Browsers zu sehen
<label>Bitte geben Sie das Passwort ein.</label>
<br>
<input id="j_idt6:password" type="password" name="j_idt6:password" value="">
"Passwort kann nicht verwendet werden.
"
<br>
<label>Schon zur Bestätigung Bitte geben Sie es einmal ein.</label>
<br>
<input id="j_idt6:rePassword" type="password" name="j_idt6:rePassword" value="">
<span class="error">Validierungsfehler:Benötigt einen Wert.</span>
PasswordValidator.java
<Kürzung:Andere sind die gleichen wie der obige Code>
FacesMessage errorMessage = new FacesMessage(KINSHI + "Kann nicht verwendet werden.");
errorMessage.setSeverity(FacesMessage.SEVERITY_ERROR);
throw new ValidatorException(errorMessage);
<Kürzung:Andere sind die gleichen wie der obige Code>
Wie mit dem Entwicklungstool des Browsers zu sehen
<label>Bitte geben Sie das Passwort ein.</label>
<br>
<input id="j_idt6:password" type="password" name="j_idt6:password" value="">
<span class="error">Passwort kann nicht verwendet werden.</span>
<br>
<label>Schon zur Bestätigung Bitte geben Sie es einmal ein.</label>
<br>
<input id="j_idt6:rePassword" type="password" name="j_idt6:rePassword" value="">
<span class="error">Validierungsfehler:Benötigt einen Wert.</span>
errorClass-Attribut: Gibt die CSS-Klasse für Fehlermeldungen an
Recommended Posts