Josef Petrák created ODFTOOLKIT-404:
---------------------------------------

             Summary: Obsolete Jena dependency at ODF Toolkit
                 Key: ODFTOOLKIT-404
                 URL: https://issues.apache.org/jira/browse/ODFTOOLKIT-404
             Project: ODF Toolkit
          Issue Type: Bug
          Components: odfdom
            Reporter: Josef Petrák


ODF Toolkit uses obsolete distribution of Jena from HP however there is Apache 
Jena under current development and management.

h2. Replicable steps

The project main method calls following statement.

{code:java}
OdfSpreadsheetDocument osd = OdfSpreadsheetDocument.loadDocument(new 
File("example.ods"));
{code}

The project uses the up-to-date Jena dependency from Apache Jena repository.

{code:xml}
<dependency>
    <groupId>org.apache.jena</groupId>
    <artifactId>jena-core</artifactId>
    <version>3.0.0</version>
</dependency>
<dependency>
     <groupId>org.apache.jena</groupId>
     <artifactId>jena-arq</artifactId>
     <version>3.0.0</version>
</dependency>
{code}

Despite that the application fails with

{code}
Exception in thread "main" java.lang.NoClassDefFoundError: 
com/hp/hpl/jena/rdf/model/RDFNode
        at org.odftoolkit.odfdom.pkg.OdfFileDom.initialize(OdfFileDom.java:215)
        at 
org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.initialize(OdfManifestDom.java:74)
        at org.odftoolkit.odfdom.pkg.OdfFileDom.<init>(OdfFileDom.java:132)
        at 
org.odftoolkit.odfdom.pkg.manifest.OdfManifestDom.<init>(OdfManifestDom.java:63)
        at org.odftoolkit.odfdom.pkg.OdfFileDom.newFileDom(OdfFileDom.java:189)
        at 
org.odftoolkit.odfdom.pkg.OdfPackage.parseManifest(OdfPackage.java:1219)
        at org.odftoolkit.odfdom.pkg.OdfPackage.readZip(OdfPackage.java:452)
        at 
org.odftoolkit.odfdom.pkg.OdfPackage.initializeZip(OdfPackage.java:422)
        at org.odftoolkit.odfdom.pkg.OdfPackage.<init>(OdfPackage.java:250)
        at org.odftoolkit.odfdom.pkg.OdfPackage.loadPackage(OdfPackage.java:320)
        at 
org.odftoolkit.odfdom.doc.OdfDocument.loadDocument(OdfDocument.java:232)
        at 
org.odftoolkit.odfdom.doc.OdfSpreadsheetDocument.loadDocument(OdfSpreadsheetDocument.java:155)
{code}

The problem is that OdfFileDom.java uses obsolete HP package name.

h2. Workaround

Following duplicate Jena dependency workarounds the issue:

{code:xml}
<dependency>
        <groupId>com.hp.hpl.jena</groupId>
        <artifactId>jena</artifactId>
        <version>2.5.5</version>
</dependency>
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to