---
title: 'JOpenDocument API'
url: 'https://tutego.de/blog/javainsel/2009/05/jopendocument-api'
markdown: 'https://tutego.de/blog/javainsel/2009/05/jopendocument-api.md'
date: '2009-05-25'
description: 'Zum Zugriff auf Dokumente und Spreadsheets von OpenOffice ist http://www.jopendocument.org/ eine GPL-Bibliothek, die das mit einer einfachen API unterstützt. Etwa das laden und verändern von Spreadsheets: File file = new File( "c:/in.ods" ); SpreadSheet createFromFile = SpreadSheet.createFromFile( …'
taxonomy:
  category:
    - 'Open Source'
---

# JOpenDocument API

![Illustration einer tropischen Insel mit Palmen und einem hohen Berg](https://tutego.de/blog/javainsel/user/themes/tutego/images/insel-cover.jpg)# Java Blog für Programmierer

[Java Blog für Programmierer](https://tutego.de/blog/javainsel/)

## JOpenDocument API

25.05.2009 · [Christian Ullenboom](https://tutego.de/blog/javainsel/author/admin/)

Zum Zugriff auf Dokumente und Spreadsheets von OpenOffice ist [http://www.jopendocument.org/](http://www.jopendocument.org/ "http://www.jopendocument.org/") eine GPL-Bibliothek, die das mit einer einfachen API unterstützt. Etwa das laden und verändern von Spreadsheets:

```java
File file = new File( "c:/in.ods" );
SpreadSheet createFromFile = SpreadSheet.createFromFile( file );
Sheet sheet = createFromFile.getSheet( 0 );
sheet.setValueAt( "Filling test", 1, 1 );
sheet.getCellAt( "A1" ).setValue( "On site support" );
sheet.getCellAt( "I10" ).setValue( new Date() );
sheet.getCellAt( "F24" ).setValue( 3 );

File outputFile = new File( "c:/out.ods" );
sheet.getSpreadSheet().saveAs( outputFile );
```

Weitere Beispiele gibt [http://www.jopendocument.org/documentation.html](http://www.jopendocument.org/documentation.html "http://www.jopendocument.org/documentation.html").

Interessant ein ein purer Java-Viewer, und damit die Möglichkeit in PDF zu exportieren, ohne dass man OO dazu fernsteuern muss.

Beim Testen der SpreadSheet-API sind mir leider einige Nachteile aufgefallen:

- Es gibt keine [Named References](http://groups.google.com/group/jopendocument/browse_thread/thread/170c4723e86ee14d)
- Die API ist sehr Datei-orientiert. [Nur im Speicher Dokumente](http://groups.google.com/group/jopendocument/browse_thread/thread/b459855917625aca) anzulesen und zu verarbeiten ist nicht möglich. Ich sehe erst einmal keine Methode, wie ein Servlet z.B. sich den `InputStream` auf ein OO-Dokuments holen und als `OutputStream` an den Client verschicken kann, ohne dass man vorher das OO-Dokument in eine Datei schreibt.
- Soll der eingebauter Viewer verwendet werden, können [TIFF-Bilder nicht angezeigt](http://groups.google.com/group/jopendocument/browse_thread/thread/2fe307c67706df78) werden.
- GPL könnte für einige Bereiche ein Problem sein. Es werden aber kommerzielle Lizenzen verkauft.

Kategorien: [Open Source](https://tutego.de/blog/javainsel/category/open-source/)

[← Alle Beiträge](https://tutego.de/blog/javainsel/)

---

## Navigation

- Previous: [Thema der Woche: Speicherverwaltung, Memory-Leaks](https://tutego.de/blog/javainsel/2009/05/thema-der-woche-speicherverwaltung-memory-leaks.md)
- Next: [SmartGWT 1.1](https://tutego.de/blog/javainsel/2009/05/smartgwt-1-1.md)
