2016-07-25 30 views
1

Sie haben versucht, Jasperreports in einer OSGI (Jboss Fuse/Karaf) Umgebung zu verwenden.Jasperreports OSGI (Sicherung/Karaf)

Ich kann die OSGI-Artefakte für Jasperreports 6.3.0 nicht finden. Wenn ich versuche, das JAR zu umbrechen, erhalte ich Fehler von Nicht-OSGI-Abhängigkeiten wie itext.

Gibt es eine Möglichkeit, dies in einer OSGI-Umgebung zu verwenden?

Antwort

0

ich zu einem OSGi bunlde verpackt haben, können Sie hier finden:

https://github.com/liveSense/org.liveSense.framework.jasperreports

Es ist eine alte Version (4.5.0), aber gearbeitet, ich habe für Produktionssystem verwendet.

Die aktualisierte Version von pom.xml ist folgende:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>com.github.livesense</groupId> 
<artifactId>jasperreports</artifactId> 
<version>6.3.0</version> 

<packaging>bundle</packaging> 
<name>liveSense :: Framework :: Jasper reports</name> 
<description> 
    liveSense Jasper report framework 
</description> 

<build> 
    <plugins> 

     <plugin> 
      <groupId>org.apache.felix</groupId> 
      <artifactId>maven-bundle-plugin</artifactId> 
      <extensions>true</extensions> 
      <configuration> 
       <instructions> 
        <_exportcontents> 
         net.sf.jasperreports.*;version=6.3.0 
        </_exportcontents> 
        <Import-Package> 
         com.apple.mrj.*;resolution:=optional, 
         com.lowagie.toolbox.*;resolution:=optional, 
         javax.mail.*;resolution:=optional, 
         junit.*;resolution:=optional, 
         antlr.*;resolution:=optional, 
         bsh.*;resolution:=optional, 
         jxl.*;resolution:=optional, 
         mondrian.*;resolution:=optional, 
         net.sourceforge.barbecue.*;resolution:=optional, 
         com.adobe.xmp.*;resolution:=optional, 
         org.apache.batik.*;resolution:=optional, 
         org.apache.poi.*;resolution:=optional, 
         org.apache.lucene.*;resolution:=optional, 
         org.apache.tools.ant.*;resolution:=optional, 
         org.apache.velocity.*;resolution:=optional, 
         org.codehaus.jackson.*;resolution:=optional, 
         org.eclipse.jdt.*;resolution:=optional, 
         org.exolab.castor.*;resolution:=optional, 
         org.hibernate.*;resolution:=optional, 
         org.jaxen.*;resolution:=optional, 
         org.krysalis.barcode4j.*;resolution:=optional, 
         org.springframework.beans.factory.*;resolution:=optional, 
         org.springframework.core.io.*;resolution:=optional, 
         org.w3c.dom.svg.*;resolution:=optional, 
         org.apache.commons.javaflow.*;resolution:=optional, 
         org.mozilla.javascript.*;resolution:=optional, 
         com.google.zxing.*;resolution:=optional, 
         org.olap4j.*;resolution:=optional, 
         * 
        </Import-Package> 


        <!-- bundle supplied resource prefixes --> 
        <Include-Resource>{maven-resources}</Include-Resource> 

        <!-- Do not inline jars, include as jar files --> 
        <!-- There are config files with same name will be overwritten --> 
        <Embed-Dependency>*;scope=compile;inline=false</Embed-Dependency> 


       </instructions> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<dependencies> 

    <!-- Embedded dependencies --> 
    <dependency> 
     <groupId>net.sf.jasperreports</groupId> 
     <artifactId>jasperreports</artifactId> 
     <version>6.3.0</version> 
    </dependency> 
    <dependency> 
     <groupId>com.lowagie</groupId> 
     <artifactId>itext</artifactId> 
     <version>2.1.7</version> 
    </dependency> 
    <dependency> 
     <groupId>org.jfree</groupId> 
     <artifactId>jfreechart</artifactId> 
     <version>1.0.19</version> 
    </dependency> 
    <dependency> 
     <groupId>org.jfree</groupId> 
     <artifactId>jcommon</artifactId> 
     <version>1.0.23</version> 
    </dependency> 
</dependencies> 
</project> 

Und einzusetzen ich die Folowing Bündel verwendet haben (in karaf 4.0.1) - Ich glaube nicht, dass alle in der Sicherung erforderlich, da installierte Features einige dieser Bundles enthalten.

bundle:install -s mvn:commons-io/commons-io/1.4 
bundle:install -s mvn:commons-collections/commons-collections/3.2.1 
bundle:install -s mvn:commons-lang/commons-lang/2.6 
bundle:install -s mvn:commons-beanutils/commons-beanutils/1.8.3 
bundle:install -s mvn:commons-digester/commons-digester/2.1 
bundle:install -s mvn:commons-codec/commons-codec/1.6 
bundle:install -s mvn:commons-pool/commons-pool/1.5.6 
bundle:install -s mvn:commons-dbutils/commons-dbutils/1.3 
bundle:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-codec/1.3_2 
bundle:install -s mvn:org.apache.commons/commons-math/2.2 
bundle:install -s mvn:commons-dbcp/commons-dbcp/1.4 
bundle:install -s mvn:commons-fileupload/commons-fileupload/1.2.2 
bundle:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_6 
bundle:install -s mvn:org.apache.httpcomponents/httpcore-osgi/4.4.5 
bundle:install -s mvn:org.apache.httpcomponents/httpclient-osgi/4.5.1 
bundle:install -s mvn:org.bouncycastle/bcprov-jdk16/1.46 
bundle:install -s mvn:org.bouncycastle/bcprov-ext-jdk16/1.46 
bundle:install -s mvn:org.bouncycastle/bctsp-jdk16/1.46 
bundle:install -s mvn:org.bouncycastle/bcmail-jdk16/1.46 
bundle:install -s mvn:org.codehaus.groovy/groovy-all/1.8.2 
bundle:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xalan/2.7.1_6 
bundle:install -s mvn:com.ibm.icu/icu4j/49.1 
bundle:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.bcel/5.2_4 
bundle:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xalan/2.7.1_4