Olá pessoal estou com uma dúvida. Tenho um validator para e-mail, e queria que o input mudasse de cor caso o valor passado não fosse um valor válido, e quando executo é lançada uma nullpointexception, alguém poderia me dizer porquê?
public class validatorEmail implements Validator {
@Override
public void validate(FacesContext context, UIComponent component,Object valorTela) throws ValidatorException {
FacesMessage message = new FacesMessage();
if (String.valueOf(valorTela).indexOf('@') == -1) {
((UIInput) component).setValid(false);
UIViewRoot viewRoot = context.getViewRoot();
HtmlInputText input = new HtmlInputText();
input = (HtmlInputText)viewRoot.findComponent("txt_email");
input.).setStyle("border-color: red;border-style: solid;height: 15px;font-size: 11px;border-width:1px;color: #BDD6FF;background-color:#FFEBDA;");
throw new ValidatorException(message);
}
}
//No meu xhtml
<h:outputText styleClass="rotulo" value="E-mail" />
<h:inputText styleClass="input_text" id="txt_email"
value="#{MBusuarios.usuarios.cpf.EMail}" size="30" >
<f:validator validatorId="validator.validatorEmail" />
<a4j:support event="onchange" reRender="txt_email"
limitToList="true" />
</h:inputText>
// a exception lançada
oot cause
java.lang.NullPointerException
validators.validatorEmail.validate(validatorEmail.java:28)
org.richfaces.component.html.HtmlInputText.validateValue(HtmlInputText.java:52)
javax.faces.component.UIInput.validate(UIInput.java:875)
javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
javax.faces.component.UIInput.processValidators(UIInput.java:672)
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
org.ajax4jsf.component.UIInclude.processValidators(UIInclude.java:207)
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
org.ajax4jsf.component.UIAjaxForm.processValidators(UIAjaxForm.java:80)
org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:442)
org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:235)
org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:458)
com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)