[Resolvido]<f:param não recupera dado de um List

3 respostas
luk_genOcide
Bom dia galera. No seguinte trecho de codigo:
<c:forEach items="${campusMBean.lista}" var="campus">
                    <tr>
                   
                        <td>${campus.id}</td>
                        <td>${campus.nome}</td>
                       
                        <td>
                            <h:commandLink value="EDITAR" action="#{ campusMBean.editar }">
                               
                                  <f:param name="id" value="#{campus.id}"/>
                               
                            </h:commandLink>
                        </td>   
                       
                        <td>
                            <h:commandLink value="DELETAR" action="#{ campusMBean.remover }">
                           
                            </h:commandLink>
                        </td>
                       
                    </tr>
                </c:forEach>

A variavel campus não consegue recuperar o valor do seu id e dispara um exceção NullPointer, sendo que no trecho ${campus.id} ele mostra o valor de id.
Alguem ja passou por isso?

3 Respostas

M

Já sim…

Deve ser porque você está misturando JSTL com tags JSF.
Eu aconselho a não misturar, ou a usar só um ou outro para evitar este tipo de problema
Nesse caso, em vez de for each, tr e td… utilize <h:dataTable…

Abraços

luk_genOcide

Obrigado pela ajuda, mas ainda prefiro usar o c:forEach.
Resolvi o problema.

No meu caso eu estava declarando a variavel para lista com ($) quando se deveria colocar o (#).
Antes:

<c:forEach items="${campusMBean.lista}" var="campus">

Depois:

<c:forEach items="#{campusMBean.lista}" var="campus">

Assim na linha com f:param ele reconhece a variavel “campus.id”.

Thanks.

Kanin_Dragon

Ola luk_genOcide ,

Coloca um [Resolvido] no tópico por favor.

Abs,

Criado 18 de março de 2011
Ultima resposta 18 de mar. de 2011
Respostas 3
Participantes 3