Bom dia pessoal, na empresa onde trabalho tem uma equipe que está desenvolvendo um projeto interno, e eles tão precisando acessar atributos de uma classe interna dentro de uma bean para seta-los em um datatable, mas da o seguinte erro:
javax.el.PropertyNotFoundException: /visao/consultarSala/consultar.xhtml @114,46 value="#{item.site}": Property 'site' not readable on type br.gov.saude.hiperdiaweb.model.dbcjava.Site
segue o fonte abaixo XHTML:
<rich:dataTable width="100%"
rowClasses="odd,even" border="1" rowKeyVar="row"
styleClass="ui-grid-content ui-widget-content"
value="#{reuniaoVisao.lSitesConferencia}" var="item" id="tabelasSites"
rendered="#{not empty reuniaoVisao.lSitesConferencia}">
<f:facet name="header">
<rich:columnGroup>
<rich:column width="10%" styleClass="ui-state-default">
<a> <strong>Informações</strong> </a>
</rich:column>
<rich:column width="5%" styleClass="ui-state-default">
<a> <strong>Ações</strong> </a>
</rich:column>
</rich:columnGroup>
</f:facet>
<rich:column styleClass="sorting_1">
<h:outputText value="#{item.site}" />
</rich:column>
<rich:column styleClass="sorting_1" style="text-align: center">
<h:commandLink action="#{reuniaoVisao.deletarSiteConferencia}">
<h:graphicImage value="/common/images/bnt_excluir.png"
title="Remover" alt="Remover" style=" width : 26px; height : 26px;"/>
<f:setPropertyActionListener value="#{item}" target="#{reuniaoVisao.siteConferencia}"/>
</h:commandLink>
</rich:column>
</rich:dataTable>
segue abaixo a bean:
@Component("reuniaoVisao")
@Scope("session")
public class ReuniaoVisao extends BaseVisao {
//[...] demais atributos
private SiteConferencia siteConferencia;
private List<SiteConferencia> lSitesConferencia;
// getters e setters
public SiteConferencia getSiteConferencia() {
if (siteConferencia == null) {
siteConferencia = new SiteConferencia();
}
return siteConferencia;
}
public void setSiteConferencia(SiteConferencia siteConferencia) {
this.siteConferencia = siteConferencia;
}
public List<SiteConferencia> getlSitesConferencia() {
if (lSitesConferencia == null) {
lSitesConferencia = new ArrayList<SiteConferencia>();
}
return lSitesConferencia;
}
public void setlSitesConferencia(List<SiteConferencia> lSitesConferencia) {
this.lSitesConferencia = lSitesConferencia;
}
// classe interna
class SiteConferencia
{
private Site site;
private Integer numeroIntegrantes;
public void setSite(Site site) {
this.site = site;
}
public Site getSite() {
return site;
}
public void setNumeroIntegrantes(Integer numeroIntegrantes) {
this.numeroIntegrantes = numeroIntegrantes;
}
public Integer getNumeroIntegrantes() {
return numeroIntegrantes;
}
public String toString(){
return site.getDescricao() + "\nNúmeros de Integrantes: " + numeroIntegrantes;
}
}
qualquer sugestão é bem vinda, desde já agradeço t+