Pessoal, tenho esse metodo aqui:
@SuppressWarnings("unchecked")
public List<String> getListarTodasRequisicoesUsuario(String login, Object contextoBean){
String hql="select u.nome, r.dataHora, ir.quantidadeSolicitada, i.nome from ItemRequisicao ir inner join ir.item as i inner join ir.requisicao as r inner join r.usuario as u where u.login = :login";
Query consulta = this.session.createQuery(hql);
consulta.setParameter("login", ((ContextoBean) contextoBean).getUsuarioLogado().getLogin());
return consulta.list();
}
Estou tentando listar essa consulta em um dataTable… Mas ta dando esse erro aqui:
/pages/restrito/nova_requisicao.xhtml @37,88 value="#{requisicaoBean.reqs}": Property ‘reqs’ not readable on type requisicao.web.RequisicaoBean
javax.el.PropertyNotFoundException: /pages/restrito/nova_requisicao.xhtml @37,88 value="#{requisicaoBean.reqs}": Property ‘reqs’ not readable on type requisicao.web.RequisicaoBean
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:108)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:190)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:178)
at javax.faces.component.UIData.getValue(UIData.java:554)
at javax.faces.component.UIData.getDataModel(UIData.java:1278)
at javax.faces.component.UIData.setRowIndex(UIData.java:447)
at com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:77)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:824)
at javax.faces.component.UIData.encodeBegin(UIData.java:937)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1641)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:164)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1646)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1646)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:389)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:127)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:117)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:135)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:311)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at requisicao.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:32)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Vou postar as classes aqui p ajudar:
RequisicaoDAOHibernate:
public class RequisicaoDAOHibernate implements RequisicaoDAO {
private Session session;
ContextoBean contextoBean = ContextoUtil.getContextoBean();
FacesContext context = FacesContext.getCurrentInstance();
public void setSession(Session session) {
this.session = session;
}
...
@SuppressWarnings("unchecked")
public List<String> getListarTodasRequisicoesUsuario(String login, Object contextoBean){
String hql="select u.nome, r.dataHora, ir.quantidadeSolicitada, i.nome from ItemRequisicao ir inner join ir.item as i inner join ir.requisicao as r inner join r.usuario as u where u.login = :login";
Query consulta = this.session.createQuery(hql);
consulta.setParameter("login", ((ContextoBean) contextoBean).getUsuarioLogado().getLogin());
return consulta.list();
}
}
RequisicaoRN:
public class RequisicaoRN {
private RequisicaoDAO requisicaoDAO;
public RequisicaoRN() {
this.requisicaoDAO = DAOFactory.criarRequisicaoDAO();
}
...
public List<String>getListarTodasRequisicoesUsuario(String login, Object contextoBean){
return this.requisicaoDAO.getListarTodasRequisicoesUsuario(login, contextoBean);
}
}
RequisicaoBean:
@ManagedBean(name = "requisicaoBean")
@RequestScoped
public class RequisicaoBean {
private Requisicao requisicao = new Requisicao();
private List<String>listarRequisicoes;
private String req;
private List<String>reqs;
...
/*
* Lista Consulta na tabela da pagina nova_requisicao
*/
public String getReq() {
return req;
}
public List<String> getListarRequisicoes() {
return this.listarRequisicoes;
}
public void setListarRequisicoes(List<String> listarRequisicoes) {
this.listarRequisicoes = listarRequisicoes;
}
public void setReq(String req) {
this.req = req;
}
public List<String> getReqs(String login, Object contextoBean) {
RequisicaoRN requisicaoRN = new RequisicaoRN();
this.listarRequisicoes= requisicaoRN.getListarTodasRequisicoesUsuario(login, contextoBean);
return listarRequisicoes;
}
public void setReqs(List<String> reqs) {
this.reqs = reqs;
}
}
pagina:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<ui:composition template="/templates/interna.xhtml">
<ui:define name="titulo">
Nova Requisição
</ui:define>
<ui:define name="corpo">
<h:form id="cadastro">
<h:messages />
<br/>
<h:outputText value="Item:"/>
<h:selectOneMenu id="selecioneitem" value ="#{itemBean.itemm}">
<f:selectItem itemLabel="Selecione" itemValue=""/>
<f:selectItems
value="#{itemBean.itens}"
var ="itens"
itemValue="#{itens}"
itemLabel="#{itens}"/>
</h:selectOneMenu>
<h:outputLabel value="Quantidade:" for="qntsoli" />
<h:inputText id="qntsoli" label="Quantidade"
value="#{requisicaoBean.qntSoli}" required="true" />
<br/>
<br/>
<br/>
<h:commandButton action="#{requisicaoBean.salvar}" value="Salvar" />
<br/>
<br/>
<h:dataTable value="#{requisicaoBean.reqs}" var="req" rules="rows" cellpadding="5">
<f:facet name="caption">
<br />
</f:facet>
<f:facet name="header">Minhas Requisições </f:facet>
<f:facet name="footer">Final da listagem</f:facet>
<h:column>
<f:facet name="header">Código Req.</f:facet>
<h:outputText value="#{requisicao.codigo}" />
</h:column>
<h:column>
<f:facet name="header">Data</f:facet>
#{requisicao.dataHora}
</h:column>
<h:column>
<f:facet name="header">Item</f:facet>
#{item.nome}
</h:column>
<h:column>
<f:facet name="header">Qntd. Solicitada</f:facet>
#{itemRequisicao.quantidadeSolicitada}
</h:column>
</h:dataTable>
</h:form>
</ui:define>
</ui:composition>
</html>
Ja to ficando louco com esse erro… Nao sei o q pode estar errado.
Abracos