Stefan Matthias Aust
2004-09-09 09:15:34 UTC
Das ist jetzt ein ganz bisschen OT:
Ich versuche Browser und Rich-Client-Anwendung zu vereinnen. In etwas,
das wie eine normale Webseite aussieht (und idealerweise eine normale
Webseite sein sollte) möchte ich bestimmte Klicks derart abfangen, dass
(idealerweise abhängig vom mime type) sofort eine bestimmte Aktion
ausgeführt wird: Ich möchte eine Ressource an bestimmter Stelle
speichern und sofort weiterverarbeiten.
Ich möchte nicht diesen "Speichern unter" Dialog sehen. Auch möchte ich
eigentlich nicht mit zwei Fenstern für Browser und meine Anwendung
arbeiten. Gleichzeitig möchte ich _schnell_ (sprich heute) eine Lösung.
Kann ich irgendwie einen Link präparieren, sodass ich direkt angeben
kann, wohin das speichert werden soll? Dieses Verzeichnis könnte ich
dann von meiner Anwendung aus überwachen. Ich vermute mal ganz stark nein.
Ich könnte wohl an einen eigenen mime type das Ausführen eines eigenen
Programms hängen, jedenfalls bei Mozilla
(Navigator/Hilfsanwendungen/Neuer Typ...). Das müsste man aber wohl
einmalig manuell machen :( Dieses merkwürdige RDF-Format in
mimeTypes.rdf verstehe ich nicht so ganz. Unschön.
Außerdem müsste ich in diesem Programm dann per socket meine Anwendung
kontaktieren. Und ich glaube, XPsp2 nörgelt, wenn eine Java-Anwendung
ein Server-Socket öffnet. Unschön.
Momentan verfolge ich den Weg, einen Browser in meine Anwendung
einzubetten und dann bei jedem Link erstmal zu schauen, was das ist.
Leider habe ich nicht Zugriff auf den mime type, nur die URL. Ich nutze
SWT, das sollte ich vielleicht noch sagen, und habe dadurch den echten
IE eingebettet (Windows only ist für mich okay). Ist das eine URL, die
mich interessiert, cancel ich den LocationEvent und mache, was ich für
richtig halte. Funktioniert. Nachteil ist aber das ich mir dadurch
meine Historie im Browser kaputtmache. Da stehe jetzt immer eine
"navigation canceled" Seite... :( Unschön.
Über Swing und dessen JEditorPane hatte ich auch kurz nachgedacht, aber
da ist die Kompatibilität zu HTML nicht so hoch. Außerdem müsste ich da
noch mehr implementieren, um einen Browser mit den üblichen Funktionen
zu haben. Dafür könnte ich wohl immer erstmal die URLConnection öffnen,
mime type anschauen und dann entweder neue Seite rendern oder eben nicht.
Über XML selbst wie HTML rendern hatte ich ganz, ganz kurz nachgedacht,
aber das schaffe ich nicht an nur einem Tag :)
Übersehe ich eine offensichtliche Lösung? Ich will einfach Dokumente
direkt in eine Anwendung (und deren Datenbank) laden, ohne dass der
Benutzer sie irgendwo lokal speichern muss. Die Webseiten kann ich
anpassen, so das nötig wäre.
bye
Ich versuche Browser und Rich-Client-Anwendung zu vereinnen. In etwas,
das wie eine normale Webseite aussieht (und idealerweise eine normale
Webseite sein sollte) möchte ich bestimmte Klicks derart abfangen, dass
(idealerweise abhängig vom mime type) sofort eine bestimmte Aktion
ausgeführt wird: Ich möchte eine Ressource an bestimmter Stelle
speichern und sofort weiterverarbeiten.
Ich möchte nicht diesen "Speichern unter" Dialog sehen. Auch möchte ich
eigentlich nicht mit zwei Fenstern für Browser und meine Anwendung
arbeiten. Gleichzeitig möchte ich _schnell_ (sprich heute) eine Lösung.
Kann ich irgendwie einen Link präparieren, sodass ich direkt angeben
kann, wohin das speichert werden soll? Dieses Verzeichnis könnte ich
dann von meiner Anwendung aus überwachen. Ich vermute mal ganz stark nein.
Ich könnte wohl an einen eigenen mime type das Ausführen eines eigenen
Programms hängen, jedenfalls bei Mozilla
(Navigator/Hilfsanwendungen/Neuer Typ...). Das müsste man aber wohl
einmalig manuell machen :( Dieses merkwürdige RDF-Format in
mimeTypes.rdf verstehe ich nicht so ganz. Unschön.
Außerdem müsste ich in diesem Programm dann per socket meine Anwendung
kontaktieren. Und ich glaube, XPsp2 nörgelt, wenn eine Java-Anwendung
ein Server-Socket öffnet. Unschön.
Momentan verfolge ich den Weg, einen Browser in meine Anwendung
einzubetten und dann bei jedem Link erstmal zu schauen, was das ist.
Leider habe ich nicht Zugriff auf den mime type, nur die URL. Ich nutze
SWT, das sollte ich vielleicht noch sagen, und habe dadurch den echten
IE eingebettet (Windows only ist für mich okay). Ist das eine URL, die
mich interessiert, cancel ich den LocationEvent und mache, was ich für
richtig halte. Funktioniert. Nachteil ist aber das ich mir dadurch
meine Historie im Browser kaputtmache. Da stehe jetzt immer eine
"navigation canceled" Seite... :( Unschön.
Über Swing und dessen JEditorPane hatte ich auch kurz nachgedacht, aber
da ist die Kompatibilität zu HTML nicht so hoch. Außerdem müsste ich da
noch mehr implementieren, um einen Browser mit den üblichen Funktionen
zu haben. Dafür könnte ich wohl immer erstmal die URLConnection öffnen,
mime type anschauen und dann entweder neue Seite rendern oder eben nicht.
Über XML selbst wie HTML rendern hatte ich ganz, ganz kurz nachgedacht,
aber das schaffe ich nicht an nur einem Tag :)
Übersehe ich eine offensichtliche Lösung? Ich will einfach Dokumente
direkt in eine Anwendung (und deren Datenbank) laden, ohne dass der
Benutzer sie irgendwo lokal speichern muss. Die Webseiten kann ich
anpassen, so das nötig wäre.
bye
--
Stefan Matthias Aust // "Zweifel sind der Ansporn des Denkens..." -U
Stefan Matthias Aust // "Zweifel sind der Ansporn des Denkens..." -U