Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Forma eficiente tratamento de valores nulos

Na video aula aonde demonstra a listagem dos produtos, caso algum valor esteja nulo, apresenta erro na pagina. Trecho do código:

    <c:forEach items="${produtos }" var="produto">
                <tr>
                    <td><a
                        href="${s:mvcUrl('PC#detalhe').arg(0,produto.id).build()}">${produto.titulo }</a>
                    </td>
                    <td>${produto.descricao }</td>
                    <td>${produto.paginas }</td>
                </tr>
            </c:forEach>

Terei que realizar if em todas as tds ou existem alguma forma mais eficiente?

4 respostas

Olá Fabrício, tudo bem?

Uma vez tive um problema parecido, consegui resolver da seguinte forma:

<c:if test="${not empty produtos}">
    <c:forEach items="${produtos }" var="produto">
                <tr>
                    <td><a
                        href="${s:mvcUrl('PC#detalhe').arg(0,produto.id).build()}">${produto.titulo }</a>
                    </td>
                    <td>${produto.descricao }</td>
                    <td>${produto.paginas }</td>
                </tr>
            </c:forEach>
</c:if>

Dessa forma, o forEach seria realizado caso a condição de produtos seja satisfeita (não nulo ou não vazia).

Consegui ajudar?

Abs

mas caso tenha algum registro da lista nulo, exemplo: - Tenho 10 registros, deste 1 tem a descrição mas a informação de pagina esta nulo, apresenta erro ao carregar a pagina (que é meu caso).

solução!

Olá Fabrício,

Nesse caso, talvez uma outra abordagem seja mais interessante. Para a lógica de negócio, é interessante que seja cadastrado um material com algum item vazio? Caso não seja interessante, podemos verificar o que o usuário está inserindo e caso não atenda nossos requisitos, podemos informar dizendo como ele deve preencher as informações.

Aqui tem um link na documentação do Spring falando mais a respeito das Validations: http://docs.spring.io/spring/docs/current/spring-framework-reference/html/validation.html

Abs

ok vlw