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)