Olá pessoal tudo bem?? então, to gerando um relatório com o ireport para ser visualizado no browser, mas quando carrega o arquivo ele aparece todo desconfigurado, parece que o browser não conseguir ler o stream… aparece assim:
%PDF-1.4
%����
3 0 obj <</Type/XObject/ColorSpace/DeviceRGB/Subtype/Image/BitsPerComponent 8/Width 955/Length 59634/Height 55/Filter/FlateDecode>>stream
x���ew m���+���۬5k`�Yg�9}� ���I� �����l� �,2��,�l�̶�
e vai longe essa cadeia de caracteres…
Bom, quando gero em html ele carrega…
e se mando salvar esse pdf no disco ele grava normalmente…
segue o codigo
public void jasperReport(String name, String type, Collection data, Map params) {
ExternalContext eContext = getExternalContext();
InputStream stream = eContext.getResourceAsStream(PREFIX + name + SUFFIX);
JasperPrint jasperPrint = null;
jasperPrint = JasperFillManager.fillReport(stream, params, new JRBeanCollectionDataSource(data));
JRExporter exporter = null;
HttpServletResponse response = (HttpServletResponse) eContext.getResponse();
FacesContext fContext = FacesContext.getCurrentInstance();
try {
response.setContentType(type);
if ("application/pdf".equals(type)) {
exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, response.getOutputStream());
}
Se alguem puder me ajudar ficarei agradecido… preciso entregar esse relatorio onde trabalho…
obrigado pessoal…