Problema gerando exception java.lang.IIlegalStateException

2 respostas
max.analista

Galera, estou com um problema que está gerando a Exception citada no título desta mensagem.
Esta minha aplicação criava uma sessão para guardar o usuário e o sistema o qual ela está acessando. No entanto, deixou de haver necessidade. Então passei tudo para o escopo View. Após isso, começou a aparecer este problema.

A aplicação abre normalmente e funciona, no entanto essa exceção me incomoda. Se esta aparece, algo deve estar errado.

Segue a StackTrace:

GRAVE: Error Rendering View[/relatorio2.xhtml]
java.lang.IllegalStateException: Cannot create a session after the response has been committed
	at org.apache.catalina.connector.Request.doGetSession(Request.java:2881)
	at org.apache.catalina.connector.Request.getSession(Request.java:2316)
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:898)
	at com.sun.faces.context.ExternalContextImpl.getSession(ExternalContextImpl.java:155)
	at com.sun.faces.renderkit.ServerSideStateHelper.writeState(ServerSideStateHelper.java:175)
	at com.sun.faces.renderkit.ResponseStateManagerImpl.writeState(ResponseStateManagerImpl.java:122)
	at com.sun.faces.application.StateManagerImpl.writeState(StateManagerImpl.java:166)
	at com.sun.faces.application.view.WriteBehindStateWriter.flushToWriter(WriteBehindStateWriter.java:225)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:418)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	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:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
	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:1004)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822)
	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)
23/01/2013 09:05:47 com.sun.faces.context.ExceptionHandlerImpl throwIt
INFO: Exception when handling error trying to reset the response.
java.lang.IllegalStateException: Cannot create a session after the response has been committed
	at org.apache.catalina.connector.Request.doGetSession(Request.java:2881)
	at org.apache.catalina.connector.Request.getSession(Request.java:2316)
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:898)
	at com.sun.faces.context.ExternalContextImpl.getSession(ExternalContextImpl.java:155)
	at com.sun.faces.renderkit.ServerSideStateHelper.writeState(ServerSideStateHelper.java:175)
	at com.sun.faces.renderkit.ResponseStateManagerImpl.writeState(ResponseStateManagerImpl.java:122)
	at com.sun.faces.application.StateManagerImpl.writeState(StateManagerImpl.java:166)
	at com.sun.faces.application.view.WriteBehindStateWriter.flushToWriter(WriteBehindStateWriter.java:225)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:418)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	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:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
	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:1004)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822)
	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)
23/01/2013 09:05:47 com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
AVISO: JSF1087: Não foi possível gerar a página de erro de Facelets porque a resposta  foi enviada.
23/01/2013 09:05:47 com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
GRAVE: javax.faces.FacesException: Cannot create a session after the response has been committed
javax.faces.FacesException: Cannot create a session after the response has been committed
	at com.sun.faces.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:141)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	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:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
	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:1004)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822)
	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)
Caused by: java.lang.IllegalStateException: Cannot create a session after the response has been committed
	at org.apache.catalina.connector.Request.doGetSession(Request.java:2881)
	at org.apache.catalina.connector.Request.getSession(Request.java:2316)
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:898)
	at com.sun.faces.context.ExternalContextImpl.getSession(ExternalContextImpl.java:155)
	at com.sun.faces.renderkit.ServerSideStateHelper.writeState(ServerSideStateHelper.java:175)
	at com.sun.faces.renderkit.ResponseStateManagerImpl.writeState(ResponseStateManagerImpl.java:122)
	at com.sun.faces.application.StateManagerImpl.writeState(StateManagerImpl.java:166)
	at com.sun.faces.application.view.WriteBehindStateWriter.flushToWriter(WriteBehindStateWriter.java:225)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:418)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

View

<?xml version='1.0' encoding='UTF-8' ?>
<!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:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <ui:composition template="/template/modelo2.xhtml">
        <h:head>
            
        </h:head>
        <body> 
            <ui:define name="left"></ui:define>
            <ui:define name="right"></ui:define>
            
            <ui:define name="content">
                <h:form id="form">
                    <p:blockUI id="blok" block="panel" trigger="pesquisar"/>
                    <p:panel id="panel" header="Curva ABC - GTi">
                        
                        <h:panelGrid id="top" columns="4" style="margin-left: 20px">
                            <h:panelGrid columns="3">
                                <h:outputLabel value="Início"/>
                                <h:outputLabel value=""/>
                                <h:outputLabel value="Fim"/>
                                <p:calendar pattern="dd/MM/yyyy" binding="#{bRelatorio2.dtInicio}" maxdate="#{bRelatorio2.dataMaxVis}" mindate="01/01/2010" locale="pt_BR" size="10"/>
                                a
                                <p:calendar pattern="dd/MM/yyyy" binding="#{bRelatorio2.dtFim}"  maxdate="#{bRelatorio2.dataMaxVis}" mindate="01/01/2010" locale="pt_BR" size="10"/>
                            </h:panelGrid>
                            
                            <h:panelGrid id="tipoRel" styleClass="bordaPanelGrid">
                                <f:facet name="header">  
                                    <h:outputLabel value="Tipo de Relatório"/>
                                </f:facet> 
                                <p:selectOneRadio layout="pageDirection" binding="#{bRelatorio2.tpRelatorio}" >
                                    <f:selectItems itemValue="#{item.value}" itemLabel="#{item.label}" value="#{bRelatorio2.siListaRelatorios}" var="item" />
                                    <p:ajax event="change" global="false" listener="#{bRelatorio2.habilitaCompradores}" update="compradores, tabela, exportar, flagTodosCompradores"/>
                                </p:selectOneRadio>
                            </h:panelGrid>
                        
                            <p:dataTable id="grupoCompras" scrollable="true" scrollHeight="120" scrollWidth="134" rows="25" emptyMessage="Nenhum resultado encontrado." value="#{bRelatorio2.siListaCompras}" var="item" >
                                <p:column width="95">
                                    <f:facet name="header">
                                        <h:outputLabel value="Grupo de Compras"/>
                                    </f:facet>
                                    <h:panelGroup >
                                        <p:selectBooleanCheckbox id="g" value="#{item.value}"/>
                                        <p:outputLabel for="g" value="#{item.label}"/>
                                    </h:panelGroup>
                                </p:column>
                            </p:dataTable>
                  
                            <p:dataTable id="compradores" scrollable="true" scrollHeight="120" scrollWidth="134" rows="25" value="#{bRelatorio2.siListaCompradores}" 
                                         var="item" liveScroll="false" >
                                <p:column width="95">
                                    <f:facet name="header">
                                        <h:outputLabel value="Compradores" />
                                    </f:facet>
                                    <h:panelGroup id="grupoCompradores">
                                        <p:selectBooleanCheckbox id="t" value="#{item.value}" disabled="#{bRelatorio2.liberaCompradores}"/>
                                        <p:outputLabel for="t" value="#{item.label}"/>
                                    </h:panelGroup>
                                </p:column>
                            </p:dataTable>
                            
                            <h:outputLabel value=""/>
                            <h:outputLabel value=""/>
                            
                            <h:panelGroup style="margin-left: 11px">
                                <p:selectBooleanCheckbox value="#{bRelatorio2.todosGrupoCompras}">
                                    <p:ajax global="false" event="change" listener="#{bRelatorio2.preencherListaGrupoCompras()}" update="grupoCompras"/>
                                </p:selectBooleanCheckbox>
                                <h:outputText value="Todos" />
                            </h:panelGroup>
                            <h:panelGroup id="pComp" style="margin-left: 11px">
                                <p:selectBooleanCheckbox id="flagTodosCompradores" value="#{bRelatorio2.todosCompradores}" disabled="#{bRelatorio2.liberaCompradores}">
                                    <p:ajax global="false" event="change" listener="#{bRelatorio2.preencherListaCompradores()}" update="compradores"/>
                                </p:selectBooleanCheckbox>
                                <h:outputText value="Todos"/>
                            </h:panelGroup>
                        </h:panelGrid>
                        <br/>
                        <center>
                        <p:commandButton id="pesquisar" immediate="false" styleClass="botao" action="#{bRelatorio2.pesquisar}" value="Pesquisar" update="tabela, exportar, msgErro, msgConsulta"/>
                        <p:commandButton styleClass="botao" ajax="false" disabled="#{bRelatorio2.exportar}" actionListener="#{bRelatorio2.exportar}" value="Exportar" style="margin-left: 4px" id="exportar">
                            <p:fileDownload value="#{bRelatorio2.arquivo}"/>
                        </p:commandButton>
                        <p:commandButton styleClass="botao" ajax="false" actionListener="#{bRelatorio2.limpar}" value="Limpar" style="margin-left: 4px" id="limpar"/>
                        </center>
                        <h:outputLabel id="msgErro" value="#{bRelatorio2.msgErro}" style="color: red"/>
                        <br/>
                        <h:panelGrid style="margin-left: -7px">
                            <p:dataTable value="#{bRelatorio2.lista}" id="tabela" pageLinks="10" rows="20" 
                                         var="item" scrollRows="0" paginator="true" scrollable="true" scrollHeight="280" scrollWidth="995"
                                         emptyMessage="Nenhum resultado encontrado até o momento">
                               
                                <p:ajax id="rowToggler" event="rowToggle" listener="#{bRelatorio2.dadosLinha}" update="subtab"/>
                                    
                                        <p:column exportable="false" width="7" style="text-align: left">  
                                             <p:rowToggler id="subtab"/>     
                                        </p:column>
                                                                        
                                        <p:column footerText="TOTAL" width="318">
                                            <f:facet name="header">
                                                <h:outputText value="#{bRelatorio2.nomeColuna1}"/>
                                            </f:facet>
                                            <h:outputText value="#{item.nome}" />
                                        </p:column>

                                        <p:column style="text-align: right" footerText="#{bRelatorio2.valorTotal}" width="80" >
                                            <f:facet name="header">
                                                <h:outputText value="Valor"/>
                                            </f:facet>
                                            <h:outputText value="#{item.valor}" >
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="3" maxFractionDigits="3"/>
                                            </h:outputText>
                                        </p:column>

                                        <p:column style="text-align: right" width="100" >
                                            <f:facet name="header">
                                                <h:outputText value="Valor Acumulado"/>
                                            </f:facet>
                                            <h:outputText  value="#{item.valorAcumulado}" >
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="3" maxFractionDigits="3"/>
                                            </h:outputText>
                                        </p:column>

                                        <p:column style="text-align: right" width="80" >
                                            <f:facet name="header">
                                                <h:outputText value="Porcentagem"/>
                                            </f:facet>
                                            <h:outputText value="#{item.porcentagem}">
                                                <f:convertNumber minFractionDigits="3" maxFractionDigits="3"/>
                                            </h:outputText>%
                                        </p:column>

                                        <p:column style="text-align: right" width="150" >
                                            <f:facet name="header">
                                                <h:outputText value="Porcentagem Acumulada"/>
                                            </f:facet>
                                            <h:outputText value="#{item.porcentagemAcumulada}" >
                                                <f:convertNumber minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>%
                                        </p:column>

                                        <p:column style="text-align: center" width="50" >
                                            <f:facet name="header">
                                                <h:outputText value="Indice"/>
                                            </f:facet>
                                            <h:outputText value="#{item.indice}" />
                                        </p:column>
                                
                                
                                <p:rowExpansion >
                                    <p:dataTable value="#{bRelatorio2.listaST}" id="subTab2"
                                                 var="itemSt" scrollRows="0" scrollable="true" scrollHeight="130" scrollWidth="975">
                                        
                                        <p:column width="75" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Nr. Solicitacao"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.nrPedido}" />
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Data Solicit."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.dtPedido}" />
                                        </p:column>
                                        
                                        <p:column width="62" style="text-align: center" >
                                            <f:facet name="header">
                                                <h:outputText value="Solicitante"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.solicitante}" />
                                        </p:column>
                                        
                                        <p:column width="78" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Nr. Ord. Comp."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.nrRequisicaoDeCompra}" />                                            
                                        </p:column>
                                        
                                        <p:column width="92" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Dt. Ord. de Comp."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.dtRequisicaoDeCompra}" />
                                        </p:column>
                                        
                                        <p:column width="62" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Comprador"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.comprador}" />
                                        </p:column>
                                        
                                        <p:column width="72" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="NF Entrada"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.nrNotaFiscalEntrada}" />
                                        </p:column>
                                        
                                        <p:column width="72" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Data Ent. NF"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.dtEntrada}" />
                                        </p:column>
                                        
                                        
                                        <p:column width="70" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Cod. Material"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.codMaterial}" />
                                        </p:column>
                                        
                                        <p:column width="270" style="text-align: left">
                                            <f:facet name="header">
                                                <h:outputText value="Material"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.descricaoMaterial}" />
                                        </p:column>
                                        
                                        <p:column width="72" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Cod. Fornec."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.codFornecedor}" />
                                        </p:column>
                                        
                                        <p:column width="220" style="text-align: left">
                                            <f:facet name="header">
                                                <h:outputText value="Fornecedor"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.descFornecedor}" />
                                        </p:column>
                                        
                                        <p:column width="70" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Qtde. Comp."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.qtdeComprada}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="5" maxFractionDigits="5"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="70" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr. Unit."/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrUnitario}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="7" maxFractionDigits="7"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="80" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr. Total"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrTotalDaCompra}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="ICMS(%)"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.icms}" >
                                                <f:convertNumber minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr. ICMS"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrIcms}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="IPI(%)"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.ipi}" >
                                                <f:convertNumber minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr IPI"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrIpi}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="PIS(%)"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.pis}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr. PIS"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrPis}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Cofins(%)"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.cofins}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="65" style="text-align: right">
                                            <f:facet name="header">
                                                <h:outputText value="Vlr. Cofins"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.vlrCofins}">
                                                <f:convertNumber pattern="###,###.##" minFractionDigits="2" maxFractionDigits="2"/>
                                            </h:outputText>
                                        </p:column>
                                        
                                        <p:column width="270" style="text-align: center">
                                            <f:facet name="header">
                                                <h:outputText value="Chave NFe"/>
                                            </f:facet>
                                            <h:outputText value="#{itemSt.chvnfe}"/>
                                        </p:column>
                                        
                                    </p:dataTable>
                                </p:rowExpansion>
                            </p:dataTable>
                       </h:panelGrid>
                       <h:outputLabel id="msgConsulta" value="#{bRelatorio2.msgConsulta}" rendered="false" />
                    </p:panel>
                
                    
                    <p:ajaxStatus onstart="statusDialog.show();" style="width: 30px" onsuccess="statusDialog.hide();"/>  
              
                    <p:dialog widgetVar="statusDialog" width="40" height="20"     
                              draggable="false" closable="false" resizable="false">  
                        <p:graphicImage value="/resources/imgs/carregando.gif"/>  
                    </p:dialog>
                </h:form>
            </ui:define>
        </body>
    </ui:composition>
</html>
MB
package br.com.relatorios.beans;

import br.com.relatorios.daos.Relatorio2Dao;
import br.com.relatorios.entidades.Relatorio2;
import br.com.relatorios.entidades.subTabela2;
import br.com.utilitarios.FormataData;
import br.com.utilitarios.FormataNumero;
import br.com.utilitarios.Msg;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.model.SelectItem;
import org.apache.poi.hssf.usermodel.HSSFBorderFormatting;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;
import org.primefaces.component.calendar.Calendar;
import org.primefaces.component.selectoneradio.SelectOneRadio;
import org.primefaces.event.ToggleEvent;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;

/**
 *
 * @author max.soares
 */
@ManagedBean
@ViewScoped 
public class BRelatorio2 implements Serializable{ 
private static final long serialVersionUID = 1L; 
    /** Creates a new instance of BRelatorio2 */
    public BRelatorio2() { 
        
        
        siListaCompras.clear();
        buscaListaGrupoCompras();
        
        buscaListaCompradores();
        
        siListaRelatorios.clear();
        siListaRelatorios.add(new SelectItem(1,"Fornecedores"));
        siListaRelatorios.add(new SelectItem(2,"Grupo de Compras"));
        siListaRelatorios.add(new SelectItem(3,"Compradores"));
        siListaRelatorios.add(new SelectItem(4,"Materiais"));

        SimpleDateFormat sd = new SimpleDateFormat("dd/MM/yyyy");  
        java.util.Calendar c = new GregorianCalendar();
        System.out.println("DATA ATUAL -> "+sd.format(c.getTime()));
        c.add(java.util.Calendar.DAY_OF_MONTH, -1);
        System.out.println("DATA PASSADA -> "+sd.format(c.getTime()));
        dataMaxVis=c.getTime();
    }
    
    
    private boolean comprador;
    private String valorTotal, msgErro="";
    private Integer indexRelatorio=0;
    private String nomeColuna1, usuario, sistema;
    private Calendar dtInicio, dtFim;
    private List<Relatorio2> lista = new ArrayList<Relatorio2>();
    private Relatorio2Dao rel2Dao=new Relatorio2Dao();
    private ResultSet rs;
    private boolean liberaCompradores=true, exportar=true, liberaTotal=false, todosGrupoCompras=false, todosCompradores=false;
    private SelectOneRadio tpRelatorio;
    private Relatorio2 selection = new Relatorio2();
    private List<SelectItem> siListaCompradores = new ArrayList<SelectItem>();
    private List<SelectItem> siListaCompras = new ArrayList<SelectItem>();
    private List<SelectItem> siListaRelatorios = new ArrayList<SelectItem>();
    private String msgConsulta="";
    private Date dataMaxVis;

   // gets and sets

Me ajudem por favor?

2 Respostas

max.analista

Observei que, se eu crio uma sessão no meu phaseListener, a exception desaparece.

HttpSession session=(HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(true);

Ajuda aí pessoal…

max.analista

Pelos testes que realizei, não há problemas com a View. Também acho que não seja um problema com o Bean ou o DAO(foram revisados na integra). Creio que seja alguma configuração do web.xml que esteja faltando. Alguem ajuda?

Criado 23 de janeiro de 2013
Ultima resposta 24 de jan. de 2013
Respostas 2
Participantes 1