From c457077aeb8568b66e2496444630229759645707 Mon Sep 17 00:00:00 2001 From: melloware <mellowaredev@gmail.com> Date: Wed, 2 Oct 2024 16:25:11 -0400 Subject: [PATCH] Enable RTF --- .../deployment/JasperReportsProcessor.java | 44 ++++++++++++++++++- runtime/pom.xml | 30 +++++++++++++ 2 files changed, 73 insertions(+), 1 deletion(-) diff --git a/deployment/src/main/java/io/quarkiverse/jasperreports/deployment/JasperReportsProcessor.java b/deployment/src/main/java/io/quarkiverse/jasperreports/deployment/JasperReportsProcessor.java index 4b01c84..b4a76f3 100644 --- a/deployment/src/main/java/io/quarkiverse/jasperreports/deployment/JasperReportsProcessor.java +++ b/deployment/src/main/java/io/quarkiverse/jasperreports/deployment/JasperReportsProcessor.java @@ -42,13 +42,16 @@ void indexTransitiveDependencies(BuildProducer<IndexDependencyBuildItem> index) index.produce(new IndexDependencyBuildItem("org.apache.xmlgraphics", "batik-bridge")); index.produce(new IndexDependencyBuildItem("com.ibm.icu", "icu4j")); index.produce(new IndexDependencyBuildItem("com.drewnoakes", "metadata-extractor")); + index.produce(new IndexDependencyBuildItem("org.jfree", "jcommon")); + index.produce(new IndexDependencyBuildItem("org.jfree", "jfreechart")); } @BuildStep void runtimeInitializedClasses(BuildProducer<RuntimeInitializedPackageBuildItem> runtimeInitializedPackages) { //@formatter:off Stream.of( - javax.swing.plaf.metal.MetalIconFactory.class.getPackageName() + javax.swing.plaf.metal.MetalIconFactory.class.getPackageName(), + org.jfree.chart.servlet.ServletUtilities.class.getName() ) .map(RuntimeInitializedPackageBuildItem::new) .forEach(runtimeInitializedPackages::produce); @@ -87,6 +90,45 @@ void registerForReflection(BuildProducer<ReflectiveClassBuildItem> reflectiveCla classNames.addAll(collectClassesInPackage(combinedIndex, net.sf.jasperreports.renderers.WrappingSvgDataToGraphics2DRenderer.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + net.sf.jasperreports.charts.ChartContext.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + net.sf.jasperreports.charts.util.ChartUtil.class.getPackageName())); + + // JFREECHART + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.JFreeChart.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.axis.Axis.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.labels.CategoryItemLabelGenerator.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.plot.Plot.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.plot.dial.DialBackground.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.renderer.category.BarRenderer.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.renderer.xy.CandlestickRenderer.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.chart.title.LegendTitle.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.Range.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.category.CategoryDataset.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.gantt.GanttCategoryDataset.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.general.Dataset.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.time.TimeSeriesCollection.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.xy.DefaultHighLowDataset.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.data.xy.XYDataset.class.getPackageName())); + classNames.addAll(collectClassesInPackage(combinedIndex, + org.jfree.ui.TextAnchor.class.getPackageName())); + reflectiveClass.produce( ReflectiveClassBuildItem.builder(classNames.toArray(new String[0])).constructors().methods().fields() .serialization() diff --git a/runtime/pom.xml b/runtime/pom.xml index 98aee82..55f5709 100644 --- a/runtime/pom.xml +++ b/runtime/pom.xml @@ -69,11 +69,41 @@ <version>75.1</version> </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-anim</artifactId> + <version>1.17</version> + </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-awt-util</artifactId> + <version>1.17</version> + </dependency> <dependency> <groupId>org.apache.xmlgraphics</groupId> <artifactId>batik-bridge</artifactId> <version>1.17</version> </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-dom</artifactId> + <version>1.17</version> + </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-gvt</artifactId> + <version>1.17</version> + </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-svg-dom</artifactId> + <version>1.17</version> + </dependency> + <dependency> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>batik-svggen</artifactId> + <version>1.17</version> + </dependency> <dependency> <groupId>antlr</groupId>