Caros,
estou desenvolvendo uma aplicação e estou com problemas ao gerar o relatório.
Meu método;
public void visualizarImpressao () throws JRException, IOException {
Servidor servidor = new Servidor();
servidorPojo = new ServidorPojo();
List<ServidorPojo> listaServidorPojo = new ArrayList<ServidorPojo>();
HttpServletResponse response =((HttpServletResponse)(FacesContext.getCurrentInstance().getExternalContext().getResponse()));
servidor = servidorPagedBean.getDataModel().getRowData();
servidorPojo.setIdServidor(servidor.getIdServidor());
servidorPojo.setFotos(servidor.getFotos());
listaServidorPojo.add(servidorPojo);
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(listaServidorPojo);
Map<String, Object> parameters = populaParametrosRelatorio(servidorPojo);
if (listaServidorPojo != null && listaServidorPojo.size() >0){
ds = new JRBeanCollectionDataSource(listaServidorPojo);
}
JasperPrint jp = JasperFillManager.fillReport(ConstantesContexto.getBasePath()+Constantes.CAMINHO_ARQUIVO_JASPER_CADASTRO, parameters, ds);
response.setHeader("Content-dispositiion","attachment;filename = relatorio.pdf");
response.setContentType("application/pdf");
JasperExportManager.exportReportToPdfStream(jp, response.getOutputStream());
}
Link JSP:
<h:column>
<h:commandLink id="teste" value="Visualizar impressão" action="#servidorBean.visualizarImpressao}"/>
</h:column>
erro:
SEVERE: Error Rendering View[/view/cadastro/servidor/listarServidor.xhtml]
java.lang.IllegalStateException: Servlet response already use stream, Writer not possible
at org.ajax4jsf.webapp.FilterServletResponseWrapper.getWriter(FilterServletResponseWrapper.java:226)
at com.sun.facelets.FaceletViewHandler.createResponseWriter(FaceletViewHandler.java:400)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:557)
at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
Alguém pode ajudar??