¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Problemas de exportación a PDF en aplicación web con JSF 1.2: causas y soluciones

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 3 Vistas
0
Cargando...

Hola,

Estamos teniendo problemas con la exportación a PDF en una aplicación web que utiliza JSF 1.2, los archivos siempre salen corruptos. Aquí están los hechos relevantes según lo que sé:

- Los mismos informes se exportan correctamente desde el diseñador, pero mal desde un navegador.

- CR XI R2, funcionando a través de Tomcat 6 o JBoss 4+. Mismo problema con cada uno.

- La versión del navegador no parece importar.

- Ejemplo del contenido interno de dos versiones del mismo informe. Uno bueno, generado a través del Diseñador, uno corrupto, generado a través del navegador web. Parece que la versión web está convirtiendo el contenido PDF a hexadecimal seguro para los lectores HTML.

stream

x&#156:&#237:}&#247:wU&#213:&#246:&#239:&#223:&#240:~&#250:&#142:7&#222:&#253:Ž&#251:&#253:>&#239:E&#238:

(Reemplacé el ";" final con ":" para que los caracteres no se conviertan antes de que veas la representación subyacente.)

stream

xu0153íu2122Ysâ8 u20ACßõ+úa ²U`t yS°'u02DCø ²Cu2020¼Qu0152u201Cõ Ç $µ% ÔÎÌzXgÖUu203AJ t´ÔêOM«m ÀꏨãQu02DC/«*u2020Í 2 y ±< ]óÅ]×"Ðulýµ)

Creo que tiene algo que ver con la transmisión a través de un servidor web que está corrompiendo el archivo. Esto puede deberse a un problema de compatibilidad con JSF 1.2 o alguna configuración de la que no tengo conocimiento. Me gustaría encontrar una solución en XI, pero estoy dispuesto a pasar a 2008 si es necesario.

Cualquier ayuda es apreciada.

Dean

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

3 Respuestas

0
Cargando...

Recomiendo:

Mostrar al espectador en la página web.

Mira el origen HTML.

¿Ves dos etiquetas <HTML>? ¿Una para el visor Crystal, y otra para el material circundante?

La solicitud de exportación funciona mediante postback: si estás incrustando la etiqueta JSF en el material circundante, entonces se interpretará no como binario sino como texto.

Atentamente,

Ted Ueda

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Ted,

Gracias por la información, parece que esto es claramente parte del problema, pero aún quedan algunos detalles por resolver.

1) Estamos utilizando los iconos incrustados de Crystal Reports en la página DHTML renderizada para exportar a PDF, no estamos transmitiendo directamente desde el backend. La página del visor de informes se llama a través del framework JSF, menciono esto a la luz de tus comentarios, porque puede ser relevante.

2) La llamada para ejecutar y mostrar el informe se realiza a través de nuestro framework JSF, en el que la acción va a un bean de respaldo que configura el informe y utiliza el método processHTTPRequest del objeto CrysatReportViewer para enviar el informe de vuelta al navegador en una página vacía.

Al ejecutar un informe, ¿deberíamos evitar volver a través del framework JSF por completo y simplemente llamar directamente al jsp de visualización desde el frontend?

He leído un poco sobre un controlador JSF reportPageViewer que viene con BusinessObjects Enterprise. ¿Es algo que deberíamos estar utilizando y podemos usarlo sin BO Enterprise?

Gracias

Dean

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

JSF es para texto.

Si necesitas transmitir un archivo binario, utiliza un Servlet o JSP.

JSF intentará codificar el flujo binario a la codificación de caracteres de la página.

Atentamente,

Ted Ueda

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?