Seite 1 von 1
HTML-Tabelle in ODS konvertieren per JAVA
Verfasst: Sa, 25.08.2007 23:05
von Biks
Hallo zusammen,
ich habe eine
HTML-Tabelle, der ich mittels
JAVA ein paar Spalten hinzufüge, deren Inhalt ich wiederum aus dem Internet beziehe. Die neue Tabelle möchte ich in OOBase als Quelle verwenden. Während ich in OOCalc eine HTML-Tabelle ohne Probleme öffnen kann, funktioniert dies mit OOBase nicht. Daher muss ich die HTML-Tabelle in ein gängigeres Format konvertieren. Ich könnte meine JAVA-Anwendung so erweitern, dass ich eine normale Spreadsheet daraus mache, indem ich die <>-Tags entferne bzw. teilweise durch TABS ersetze.
Allerdings hoffe ich auf eine schönere Lösung, in dem ich die
Tabelle als ODS speichere.
- Kann ich auf entsprechende Open-Office-Klassen einfach so zugreifen? Oder benötige ich dafür das SDK?
- Muss ich, um die Tabelle als ODS zu speichern, die Datei vorher auch mittels einer OO-Funktion öffnen oder erfolgt beim Speichern als ODS automatisch eine Auswertung der HTML-Tags?
- Würde eine Öffnen-OO-Klasse eine HTML-Tabelle (Dateiendung xls) öffnen können?
- Gibt es eine Übersicht, die einem die OO-Klassen und deren Funktionen kurz vorstellt?
Viele Grüße!
Biks
Re: HTML-Tabelle in ODS konvertieren per JAVA
Verfasst: So, 26.08.2007 16:51
von Toxitom
Hey Biks,
du müsstest die Tabelle via einer UNO-Funktion in OOo öffnen - mit entsprechenden Filterangaben - sonst weird daraus keine Calc-Tabelle und später kein *.ods.
Der Weg wäre wie folgt:
Öffnen der Datei mit der Methode LoadComponentfromURL(), übergabe ders HTML-Filters, abspeichern der Datei als *.ods.
Kannst du alles im "hidden" mode durchführen.
Da die API offen liegt und die UNO Komponenten durchaus auch von außen angesteuert werden können, kannst du das natürlich alles von Java aus machen.
Das SDK benötigst du m.W. nicht zwingend, da aber dort auch die komplette Dokumentation drin steckt und viele Beispiele (in Java), wäre es für dich schon zu empfehlen.
Ansosnten, die verfügbaren Services, interfaces etc findest du
-> hier, meist sind auch Beispiele verlinkt (im Developers Guide).
Viele Grüße
Thomas
Re: HTML-Tabelle in ODS konvertieren per JAVA
Verfasst: Do, 30.08.2007 16:36
von Biks
Danke für die Infos!
JAVA-Pfade einrichten...
Verfasst: Sa, 01.09.2007 01:01
von Biks
So, ich habe mir nun das SDK installiert und eingerichtet. Soweit so gut. Aber viel weiter komme ich nicht. Der Developers Guide hilft mir da auch nicht wirklich weiter, weil man dort davon ausgeht, dass man mit einem JAVA-Projekt-Editor (oder wie auch immer) arbeitet, insofern ich das richtig verstanden habe (Kapitel 2.3.3). Ich hoffe ihr könnt mir noch ein paar Hinweise geben.
Wie kann ich die com.sun.XXX-Importe der Java-Umgebung zugänglich machen, so dass sie beim kompilieren gefunden werden? Geht das mit CLASSPATH? Der Begriff ist mir begegnet, aber ich weiß nicht, wo ich die Einstellungen dazu machen kann. Ich arbeite mit "JDK 1.6.0".
Schönes Wochenende!
Biks
PS: Konkret gesagt will ich zum Beispiel folgenden Import durchführen:
import com.sun.star.lang.XComponent;
Re: JAVA-Pfade einrichten...
Verfasst: Sa, 01.09.2007 09:53
von hol.sten
Biks hat geschrieben:Wie kann ich die com.sun.XXX-Importe der Java-Umgebung zugänglich machen, so dass sie beim kompilieren gefunden werden? Geht das mit CLASSPATH? Der Begriff ist mir begegnet, aber ich weiß nicht, wo ich die Einstellungen dazu machen kann.
So geht CLASSPATH:
http://de.wikipedia.org/wiki/Klassenpfad
Alle JAR-Dateien für OOo findest du in deinem OOo-Installationsverzeichnis im Unterverzeichnis "program\classes".
Biks hat geschrieben:PS: Konkret gesagt will ich zum Beispiel folgenden Import durchführen:
import com.sun.star.lang.XComponent;
Diese Klasse befindet sich in ridl.jar.
Bei einer OOo 2.2-Installation KÖNNTE das Verzeichnis der JAR-Dateien für OOo bei dir so aussehen:
Wäre dem so, wird dir folgender CLASSPATH bei den meisten OOo-Projekten völlig ausreichen:
Code: Alles auswählen
set L=C:\Programme\OpenOffice.org2.2\program\classes
set CLASSPATH=%L%\juh.jar;%L%\jurt.jar;%L%\ridl.jar;%L%\unoil.jar
Aus deiner Frage schließe ich allerdings, dass du von Java keine Ahnung hast. Wundere dich daher nicht, wenn du mehr Probleme als Erfolge hast, da die Java-Programmierung von OOo wirklich kein Vergnügen ist.
Regards
hol.sten
Re: JAVA-Pfade einrichten...
Verfasst: Sa, 01.09.2007 14:39
von Biks
hol.sten hat geschrieben:
Aus deiner Frage schließe ich allerdings, dass du von Java keine Ahnung hast. Wundere dich daher nicht, wenn du mehr Probleme als Erfolge hast, da die Java-Programmierung von OOo wirklich kein Vergnügen ist.
Regards
hol.sten
Das siehst Du richtig

Auch wenn es so wie Du es sagst sehr hart klingt

Doch ich bin zuversichtlich - solange ich hier weiterhin so kompetente Unterstützung bekomme.
Ich habe gedacht/gehofft, dass ich in der allgemeinen JAVA-Umgebung die CLASSPATH einstellen könnte. Aber beim Kompilieren ist auch okay, läuft ja eh über ein Batch.
Danke schön!
*EDIT*
"CLASSPATH" ist also eine Systemvariable, die ich demnach auch bei den Betriebssystem-Einstellungen definieren kann. Das ist gut. Damit kann mir dann die Angaben beim Kompilieren sparen.
*EDIT2* Meine Lösung: Ich habe in XP in den Systemeigenschaften eine Systemvariable mit dem Verweis auf das OpenOffice Klassenverzeichnis erstellt:
Systemsteuerung>System>Erweitert>Umgebungsvariablen>Systemvariablen>Neu
Diese Variable gebe ich dann beim Kompilieren mit an:
javac -classpath "%OOKlassenverzeichnis%\XXXXXX.jar" javacode.java
Danke nochmals.