Question

J'essaie d'écrire une extension (plug-in) pour les rapports Eclipse BIRT. Il consiste à extraire des images d’un fichier en fonction des entrées de la base de données et à les afficher.

J'utilise JAI-ImageIO de Sun pour accéder aux données du fichier TIFF et les convertir au format PNG afin de les afficher dans le rapport. Mon code est conforme, mais lève une exception d'exécution 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)
...

J'utilise la méthode PlanarImage.getAsBufferedImage (). Elle doit donc être convertie en un objet image plus standard. J'ai placé les fichiers JAI JAI dans mon JRE et testé le même code de base en dehors de l'environnement du plug-in Eclipse - cela fonctionne bien. Cela semble être un problème lié à CLASSPATH, mais j’ai vérifié que tous les JRE de mon système contiennent les fichiers jar et DLL nécessaires aux emplacements appropriés.

Pour un nouveau pilote JDBC, vous devez placer le (s) fichier (s) jar dans un sous-répertoire spécial de plugins. Existe-t-il un emplacement spécial pour placer d'autres fichiers JAR tiers afin que BIRT puisse les utiliser?

Était-ce utile?

La solution

Ce problème a été résolu dans Extension Eclipse pour l’ouverture des images TIFF de type 4 . En gros, il vous suffit de créer un sous-répertoire et d'y placer tous les fichiers JAR et DLL, d'ajouter les fichiers JAR à votre chemin d'accès aux classes et d'ajouter les DLL aux "dépendances de plug-ins". sous "bibliothèques natives requises".

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top