Você está aqui:
JSF - Java Server Faces :::
JSF Validation Controls (Controles de Validação) ::: |
Como validar uma faixa de valores inteiros usando o controle <f:validateLongRange>Quantidade de visualizações: 9280 vezes |
|
O controle <f:validateLongRange>, um objeto da classe LongRangeValidator (do pacote javax.faces.validator), é usado quando queremos nos certificar de que o valor inserido em um determinado campo esteja dentro de uma faixa de inteiros, ou seja, podemos especificar o valor mínimo e o valor máximo. Se o valor informado pelo usuário estiver fora desta faixa o formulário não será enviado e uma mensagem de erro é exibida. Antes de vermos como este controle funciona, tenha em mente que, quando um controle de entrada, por exemplo, um <h:inputText>, é ligado à uma propriedade do tipo int ou long de um bean, tal campo não aceitará valores que não sejam inteiros, mesmo que não usemos um validador. Assim, veja o código para uma caixa de texto ligada à propriedade estoque de um bean chamado Produto: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
Estoque:<br />
<h:inputText size ="40" id="estoque" value="#{produto.estoque}" />
Se informarmos um valor que não seja um inteiro, teremos a seguinte mensagem de erro: j_idt8:estoque: 'aaaaa' must be a number consisting of one or more digits. Agora vamos ao controle <f:validateLongRange>. Veja uma página JSP ou Facelets que contém uma caixa de texto e um controle <f:validateLongRange>. A caixa de texto está ligada à propriedade estoque de um bean chamado Produto: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Estudos JSF</title>
</h:head>
<h:body>
<h4>Cadastro de Produtos</h4>
<h:form>
Estoque:<br />
<h:inputText size ="40" id="estoque" value="#{produto.estoque}">
<f:validateLongRange minimum="5" maximum="50"/>
</h:inputText>
<h:commandButton id="submit" value="Gravar Dados"
action="#{produto.gravar}" />
</h:form>
</h:body>
</html>
Aqui nós definimos que o valor mínimo é 5 e o valor máximo é 50. Se informarmos um valor fora desta faixa teremos a seguinte mensagem de erro: j_idt8:estoque: Validation Error: Specified attribute is not between the expected values of 5 and 50. É claro que nossos usuários de lingua portuguesa não gostarão nem um pouco da mensagem de erro em inglês. Assim, basta usarmos a propriedade validatorMessage do controle <h:inputText> para definirmos uma mensagem personalizada. Veja: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
Estoque:<br />
<h:inputText size ="40" id="estoque" value="#{produto.estoque}"
validatorMessage="O valor não está dentro da faixa permitida">
<f:validateLongRange minimum="5" maximum="50"/>
</h:inputText>
É possível omitir uma das propriedades do controle de validação <f:validateLongRange>. Pode haver situações nas quais queremos validar apenas a faixa inferior ou superior. Veja como podemos, por exemplo, informar apenas a faixa inferior do estoque de um produto: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
Estoque:<br />
<h:inputText size ="40" id="estoque" value="#{produto.estoque}"
validatorMessage="O valor não está dentro da faixa permitida">
<f:validateLongRange minimum="5" />
</h:inputText>
|
|
|
Veja mais Dicas e truques de JSF - Java Server Faces |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







