*/
package org.mxchange.addressbook.validator.password;
-import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.FacesValidator;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;
import javax.inject.Inject;
-import org.mxchange.addressbook.beans.login.AddressbookUserLoginWebSessionController;
import org.mxchange.jcoreee.validator.string.BaseStringValidator;
-import org.mxchange.jusercore.container.login.LoginContainer;
-import org.mxchange.jusercore.container.login.UserLoginContainer;
-import org.mxchange.jusercore.model.user.UserUtils;
/**
* A validator for validating passwords (if they match with stored)
*/
private static final long serialVersionUID = 48_581_795_687_317L;
- /**
- * User login controller
- */
- @Inject
- private AddressbookUserLoginWebSessionController userLoginController;
-
@Override
public void validate (final FacesContext context, final UIComponent component, final Object value) throws ValidatorException {
// Trace message
// Pre-validation (example: not null, not a string, empty string ...)
super.preValidate(context, component, value, requiredFields, false);
+ /*
+ * @TODO injection is not working in converters. No, JavaEE is not so super-flexible.
// value is known to be an entered password, so instance login container
LoginContainer container = new UserLoginContainer(this.userLoginController.getLoggedInUser(), (String) value);
// Password mismatches
throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_ERROR, "Password mismatching.", "The password the user has entered does not match the stored password.")); //NOI18N
}
+ */
// Trace message
//* NOISY-DEBUG: */ System.out.println("validate: EXIT!"); //NOI18N