Pregunta

Estoy tratando de escribir una extensión (complemento) para los informes de Eclipse BIRT. Implica extraer imágenes de un archivo de acuerdo con las entradas de la base de datos y mostrarlas.

Estoy usando Sun's JAI-ImageIO para acceder a los datos del archivo TIFF y convertirlos a PNG para mostrarlos en el informe. Mi código cumple, pero arroja una excepción de tiempo de ejecución NoClassDefFound:

SEVERE: Error happened while running the report.
java.lang.NoClassDefFoundError: javax/media/jai/PlanarImage
  at org.eclipse.birt.sample.reportitem.rotatedlabel.util.GraphicsUtil.createDocImage
(GraphicsUtil.java:66)
  at org.eclipse.birt.sample.reportitem.rotatedlabel.RotatedLabelPresentationImpl.onRowSets
(RotatedLabelPresentationImpl.java:136)
  at org.eclipse.birt.report.engine.extension.ReportItemPresentationBase.onRowSets
(ReportItemPresentationBase.java:218)
  at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.
processExtendedContent(LocalizedContentVisitor.java:966)
...

Estoy usando el método PlanarImage.getAsBufferedImage (), por lo que debería convertirse en un objeto de imagen más estándar. Coloqué los archivos jar JAI en mi JRE y probé el mismo código básico fuera del entorno del complemento Eclipse, eso funciona bien. Parece ser un problema de CLASSPATH, pero he verificado que todos los JRE en mi sistema contienen los archivos jar y DLL necesarios en los lugares apropiados.

Para un nuevo controlador JDBC, debe colocar los jar (s) en un subdirectorio especial de complementos: ¿hay un lugar especial para colocar otros jar de terceros para que BIRT pueda usarlos?

¿Fue útil?

Solución

Esto se ha resuelto en Extensión de Eclipse para abrir imágenes TIFF tipo 4 . Básicamente, solo necesita hacer un subdirectorio y colocar todos los JAR y DLL en él, agregar los frascos a su classpath y agregar los DLL a las dependencias del complemento " bajo "bibliotecas nativas requeridas".

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top