JSF Mini Livro – Dicas, conceitos e boas práticas

97

Posted on September 2, 2012 by

Share it now!

Recebendo “null” da view

Boas práticas de programação dizem para evitar a passagem do valor “null” dentro da aplicação, assim podemos evitar o famoso erro NullPointerException. Por padrão o JSF já faz com que toda entrada das telas não seja “null”. Um inteiro recebe zero, um boolean recebe false e um atributo String recebe “”.

Se for requisito receber “null” ao invés de um valor padrão, existe um modo de forçar o JSF a não transformar nenhum valor com valor default. O primeiro passo é adicionar a configuração abaixo ao arquivo web.xml.

<context-param>
    <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
    <param-value>true</param-value>
</context-param>

Para o servidor Glassfish apenas a configuração acima já produz o resultado esperado. No caso do Tomcat/JBoss, com essa configuração apenas ainda teremos o valor como “null”. Isso acontece por que o servidor acaba por ignorar a configuração do JSF e não respeita essa alteração. Para forçar o servidor a manter o “null” adicione o seguinte parâmetro de configuração da VM do servidor: -Dorg.apache.el.parser.COERCE_TO_ZERO=”false”.O Tomcat/JBoss irá manter o valor em vazio como “null” e não mais os valores padrões que são fornecidos pelo próprio JSF.

Response to JSF Mini Livro – Dicas, conceitos e boas práticas

1 4 5 6
  1. Guerino Rodella

    Muito bom!
    O que me deixou com dúvida foi esse arquivo, “faces-config.xml”. Meu projeto não conta com este arquivo. Seria o web.xml? OBS: Estou desenvolvendo em JSF 2.2

    Outra coisa, se eu for trabalhar com vários idiomas, terei vários arquivos um para cada idioma. Como ficaria o EL acessando diferentes arquivos?

    • uaihebert Post author

      Guerino, boa noite.

      Primeiro, me perde a demora em responder. Estou muito pegado no trabalho, para você ter idéia, estou te respondendo dele enquanto um deploy não termina.

      Esse arquivo não é mais obrigatório nas versões mais novas do JSF, por isso que seu projeto não tem.

      Quando você for usar com muitas linguagens sua EL continuará do mesmo modo. Você pode adicionar quantos arquivos quiser, isso nunca influenciará sua EL.

      Espero ter ajudado, obrigado pela visita.

  2. Luciana

    Oi, estou começando agora com JSF e achar um material legal não é fácil. Mas sua iniciativa é ótima , ta me ajudando bastante. Obrigada.

    • uaihebert Post author

      Luciana, boa noite.

      Primeiro, me perde a demora em responder. Estou muito pegado no trabalho, para você ter idéia, estou te respondendo dele enquanto um deploy não termina.

      Obrigado pelo apoio, fico feliz em saber que estou ajudando. (:

    • uaihebert Post author

      João, boa tarde.

      Eu não tenho o material em PDF, dá muito trabalho já criar o post e seria tempo d+ em criar o PDF.

      Obrigado pela visita.

1 4 5 6

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *