Pessoal estou com uma duvida, tenho os relacionamentos das minhas tabelas mapeados da seguinte forma:
Usuario, Endereco e Login.
Onde:
Usuario tem vários endereços (1…x)
e
Usuario tem um Login (1…1)
Na hora de mapear no meu dataTable fica da seguinte forma:
<rich:dataTable value="#{usuarioBean.usuarios}"
var="usuario"
onRowMouseOver="this.style.backgroundColor='#F8F8F8'"
onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
rowClasses="cur">
<rich:column>
<f:facet name="header">Id</f:facet>
<h:outputText value="#{usuario.id}" />
</rich:column>
<rich:column>
<f:facet name="header">Nome</f:facet>
<h:outputText value="#{usuario.nome}" />
</rich:column>
<rich:column>
<f:facet name="header">
Telefone
</f:facet>
<h:outputText
value="#{usuario.telefone}" />
</rich:column>
<rich:column>
<f:facet name="header">Idade</f:facet>
<h:outputText value="#{usuario.idade}" />
</rich:column>
<rich:column>
<f:facet name="header">Rua</f:facet>
<h:outputText value="#{usuario.endereco.rua}" />
</rich:column>
<rich:column>
<f:facet name="header">Número</f:facet>
<h:outputText value="" />
</rich:column>
<rich:column>
<f:facet name="header">Bairro</f:facet>
<h:outputText value="" />
</rich:column>
<rich:column>
<f:facet name="header">Pais</f:facet>
<h:outputText value="" />
</rich:column>
<rich:column>
<f:facet name="header">Login</f:facet>
<h:outputText value="#{usuario.login.nomeLogin}" />
</rich:column>
</rich:dataTable>
Pessoal, o problema é que a tag <h:outputText value="#{usuario.endereco.rua}" /> não está funcionando. É gerado o seguinte erro:
Caused by: javax.faces.FacesException: javax.el.PropertyNotFoundException: /telas/usuario/listarUsuario.xhtml @47,57 value="#{usuario.endereco.rua}": The class 'java.util.LinkedHashSet' does not have the property 'rua'.
at javax.faces.component.UIOutput.getValue(UIOutput.java:176)
at org.apache.myfaces.shared_impl.renderkit.RendererUtils.getValue(RendererUtils.java:327)
... 59 more
Caused by: javax.el.PropertyNotFoundException: /telas/usuario/listarUsuario.xhtml @47,57 value="#{usuario.endereco.rua}": The class 'java.util.LinkedHashSet' does not have the property 'rua'.
at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:73)
at javax.faces.component.UIOutput.getValue(UIOutput.java:173)
... 60 more
Alguem pode me ajudar com isso?
Grato!