JSF validator

0 respostas
SirDominque

Gente , boa noite :P
Queria pedir uma ajudinha rsrs
Estou com um projeto da facul, e estou com duvida sobre o JSF.
Esse validator, será chamado apenas quando eu clicar no CommandButton?

Como eu disparo esse validator sem ajax?

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	template="index.xhtml">

    <ui:define name="painel">
    	<h:form>
    	
	    	<p:panelGrid style="font-size:75%">  
	    	
			    <f:facet name="header">  
			    	<p:row>
			    		<p:column colspan="3">
			    			Cadastro de Aeronaves
			    		</p:column>
			    	</p:row>
			    </f:facet>  
			  
			  
			  
				<p:row>
				<p:column>Código:</p:column>
				<p:column> 
				<p:inputText id="codigo" value="99999" validator="cadastroAeronavesCodigoValidator" >   
				</p:inputText>
				</p:column>
				
				
			    </p:row>
					
				<p:row>
				<p:column>Fabricante:</p:column>
				<p:column> <h:inputText  id="fabricante" value="99999"  required="true"/>    </p:column>
			    </p:row>	
			    
			    <p:row>
				<p:column>Nome:</p:column>
				<p:column> <h:inputText id="nome"  value="99999" required="true" />    </p:column>
			    </p:row>	
					
				<p:row>
				<p:column>Quantidade De Assentos:</p:column>
				<p:column> <h:inputText  id="quantidadeAssentos" value="99999" validator="cadastroAeronavesAssentosValidator" />    </p:column>
			    </p:row>
				
				
			    <f:facet name="footer">  
			    	<p:row>
			    		<p:column colspan="3">
			    			<p:commandButton type="button" value="Save" icon="ui-icon-check" style="margin:0"/>  
			    		</p:column>
			    	</p:row>
			    </f:facet>  
			    
			</p:panelGrid>  
			
			<p:commandButton value="Cadastrar" action="#{aeronaveController.printText}"> </p:commandButton>
			
		</h:form>
    </ui:define>
    
</ui:composition>
package validatorsCadastroAeronaves;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
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;

@ManagedBean
@FacesValidator("cadastroAeronavesCodigoValidator")
public class ValidatorCodigo implements Validator
{
	
	public String LETTERS_PATTERN = "[a-zA-Z]*";

	
	@Override
	public void validate(FacesContext arg0, UIComponent arg1, Object value)
	{
	
		String valor = value.toString();
		
		if(valor.matches(LETTERS_PATTERN))
		{
			FacesMessage msg = new FacesMessage("Validation failed.", "Invalid  format.");
            msg.setSeverity(FacesMessage.SEVERITY_ERROR);

            
            throw new ValidatorException(msg);
		}
		
	
	
		
	}

	
	
	
}
Criado 14 de abril de 2013
Respostas 0
Participantes 1