Você está aqui:
JSF - Java Server Faces :::
JSF Validation Controls (Controles de Validação) ::: |
Validando uma faixa de valores de ponto-flutuante usando o controle <f:validateDoubleRange>Quantidade de visualizações: 7973 vezes |
O controle <f:validateDoubleRange>, uma instância da classe LongRangeValidator (no pacote javax.faces.validator) é usado quando queremos verificar se um valor do tipo double, ou seja, um valor com ponto decimal, está dentro de uma determinada faixa. Desta forma, podemos especificar um valor mínimo e um valor máximo e o controle se encarregará de fazer esta verificação. Antes, é importante estar ciente que, se tivermos um campo <h:inputText> ligado à uma propriedade do tipo double de um bean, o JSF espera um valor de ponto-flutuante usando-se o ponto "." como separador. Se usarmos vírgula, o formulário não será enviado e teremos uma mensagem do tipo: j_idt8:preco: '45,3' must be a number consisting of one or more digits. Se o valor for informado como 45.3 o problema é resolvido. Em minhas outras dicas sobre JSF você encontrará formas de resolver esta limitação, uma vez que os usuários brasileiros estão acostumados a informar valores de ponto-flutuante como "45,90" e não "45.90". Mas, continuando com o controle <f:validateDoubleRange> nós vamos ver como é possível garantir que o valor digitado em um campo de texto esteja na faixa de 0.0 à 100.00. Veja o código para um página JSP contendo uma caixa de texto <h:inputText> e um controle <f:validateDoubleRange>: ---------------------------------------------------------------------- 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>Produtos</title> </h:head> <h:body> <h4>Cadastro de Produtos</h4> <h:form> Preço do Produto:<br /> <h:inputText size ="40" id="preco" value="#{produto.preco}"> <f:validateDoubleRange minimum="0.0" maximum="100.00" /> </h:inputText> <h:commandButton id="submit" value="Gravar Dados" action="#{produto.gravar}" /> </h:form> </h:body> </html> Ao executarmos a aplicação e informarmos valores tais como -34 ou 120.50 teremos a seguinte mensagem: j_idt8:preco: Validation Error: Specified attribute is not between the expected values of 0 and 100. É claro que esta mensagem em inglês não parece muito informativa aos nossos usuários de lingua portuguesa. Assim, basta fornecer o texto da mensagem personalizada para a propriedade validatorMessage do controle <h:inputText>. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <h:inputText size ="40" id="preco" value="#{produto.preco}" validatorMessage="O valor não está dentro da faixa permitida"> <f:validateDoubleRange minimum="0.0" maximum="100.00" /> </h:inputText> Agora, se o valor estiver fora da faixa informada, a seguinte mensagem será exibida: O valor não está dentro da faixa permitida É possível omitir uma das propriedades do controle de validação <f:validateDoubleRange>. 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 preço de um produto: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <h:inputText size ="40" id="preco" value="#{produto.preco}" validatorMessage="O valor não está dentro da faixa permitida"> <f:validateDoubleRange minimum="10.0" /> </h:inputText> |
Link para compartilhar na Internet ou com seus amigos: |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Equação da continuidade Um Boeing 747 (figura) tem em torno de 500 m2 de área alar (área total das duas asas). Considere que ele está se movendo a 230 m/s em relação ao ar. As linhas de fluxo acima da asa estão comprimidas em 80% de sua área original. As linhas de fluxo abaixo da asa não estão comprimidas. Calcule a força resultante devido à pressão à qual o Boeing está submetido. Considere a densidade do ar na altitude em que o Boeing está voando ρar = 0,40 kg/m3. A) 1,27 x 106 N B) 5,91 kN C) 2,98 x 106 N D) 2,20 x 106 N E) 3,48 x 106 N Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Alvenaria: Técnicas construtivas A elevação de paredes em alvenaria deve: A) Iniciar no meio do vão em direção aos cantos. B) Iniciar do lado direito para o lado esquerdo. C) Iniciar do lado esquerdo para o lado direito. D) Iniciar dos cantos, ou junto ao pilares, em direção ao centro. E) Iniciar pelos cantos, em toda a altura do pé-direito, e depois seguir em direção ao centro. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Dimensionamento de Redes de Distribuição de Água Qual a vazão em marcha e específica para uma cidade com 250.000 habitantes, área de 1.250 ha e consumo per capta de 275 L/hab.dia? Considere que existem 12 km de rede instalados. A) qm = 0,12 L/s.ha e qd = 1,15 L/s.m. B) qm = 1,15 L/s.ha e qd = 0,12 L/s.m. C) Q = 1,43 m3/s. D) qm = 1,15 L/s.m e qd = 0,12 L/s.ha. E) qm = 0,12 L/s.m e qd = 1,15 L/s.ha. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Postura ética profissional A resolução de dilemas éticos deve ser resultado de um processo de reflexão e análise, integrando valores morais e fatos para buscar uma solução moralmente correta. Segundo Holtzapple e Reece (2006), quais os aspectos fundamentais para a resolução de dilemas éticos? Assinale a alternativa correta: A) Ter clareza moral, ter clareza conceitual, manter-se parcial, conhecer todas as alternativas viáveis, ter razoabilidade. B) Ter clareza moral, ter imprecisão conceitual, manter-se atualizado, conhecer todas as alternativas viáveis, ter razoabilidade. C) Ter clareza moral, ter clareza conceitual, manter-se parcial, considerar exclusivamente as alternativas lucrativas, ter razoabilidade. D) Ter variabilidade moral, ter clareza conceitual, manter-se alheio, conhecer todas as alternativas viáveis, ter razoabilidade. E) Ter clareza moral, ter clareza conceitual, manter-se atualizado, conhecer todas as alternativas viáveis, ter razoabilidade. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Postura ética profissional Os princípios éticos que norteiam a prática profissional dos engenheiros não são definidos por uma única entidade ou indivíduo específico. Há diferentes fontes e organizações que estabelecem a conduta ética a ser seguida por esses profissionais. Assinale a alternativa que melhor apresenta essas fontes e organizações, segundo Cocian (2016): A) Organizações profissionais, legislação e regulamentações, instituições de ensino, experiência profissional. B) A Associação Mundial de Engenheiros, o Conselho de Ética, a Sociedade Internacional de Engenheiros e a Federação Internacional de Engenharia (FIE). C) Os códigos de ética redigidos pelas empresas Apple, Microsoft, Google e Amazon. D) As diretrizes éticas de partidos políticos, organizações ambientais, grupos de consumidores e clubes esportivos. E) Os princípios éticos estabelecidos por escritores famosos, celebridades, filósofos antigos e artistas renomados. Verificar Resposta Estudar Cards Todas as Questões |
Veja mais Dicas e truques de JSF - Java Server Faces |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |