Autor Thema: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)  (Gelesen 15749 mal)

Sebastianh

  • Gast
Hallo,

da ich (wie einige sicherlich bereits mitbekommen haben :) ) versuche, ein Dokument ausserhalb von Notes darzustellen, benutze ich im DXL-Exporter die Funktion
Code
dxlExporter.setConvertNotesBitmapsToGIF(true);

Im DXL steht dann als Tag:
Code
<picture height="32px" width="496px" align="baseline">
<notesbitmap>
xP/cAAQAAQ...

hier stellt sich mir bereits die Frage, ob in den Tags nicht irgendwo bereits eine Information der Sorte "gif" angegeben sein sollte.

Das eigentliche Problem ist aber, dass der Base64 kodierte String nie (egal wie groß das Ursprungsbild war) größer als 200 Zeichen ist. Meist 2 Zeilen a 77 Zeichen, die dritte Zeile enthält dann max. 10-30 Zeichen. Wenn ich diese Strings mit:
Code
String base64 = "hierdieBase64Zeichenkette";
BASE64Decoder be = new BASE64Decoder();
byte[] b_source =  be.decodeBuffer(base64);
in Binärdaten wandele, bekomme ich auch Arraygrößen, die weit unter den erwarteten liegen.
Habe ich evtl. irgendwas übersehen?

(edit: die so erzeugten gif-Dateien sind natürlich nicht lesbar)

Gruß,

Sebastian

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #1 am: 16.07.09 - 09:05:39 »
nungut, was die erste Frage angeht, hätte ich wohl mal genauer in die Hilfe schauen sollen:

Zitat
Converted bit maps result in the following DXL:
<gif orignalformat='notesbitmap'>gif representation</gif>
While non-converted bit maps are:
<notesbitmap>notes representation</notesbitmap>
On import, GIF files are converted back to Notes format if the "originalformat" attribute is present.

Das erklärt aber nicht, wieso trotz der auf "true" gesetzten  "setConvertNotesBitmapsToGif"-Property noch <notesbitmap>-Elemente erzeugt werden. Muss ich das verstehen?

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #2 am: 16.07.09 - 10:03:38 »
auf meinem 7er Testsystem mit einer selbstgebastelten HTML-Mail, wird ein gif-tag mit entsprechend viel Base64-Code als Inhalt erzeugt. Ausgelesen und dekodiert ergibt es aber trotzdem nicht das Ergebnis, das ich mir vorstelle (geschriebende gif-Datei nicht als solche zu erkennen (von div. Viewern)). Selbst wenn dem so wäre, warum es auf dem 8er Produktivsystem nicht funktioniert, weiss ich dann immer noch nicht.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #3 am: 18.07.09 - 16:22:53 »
Dein Base64 Decoder funktioniert aber schon? bei uns klappt das.

Eine GIF-Datei beginnt übrigens immer mit der Zeichenfolge "GIF89" oder "GIF86" (bzw. wenn es noch Base64-codiert ist mit "R0lGOD")
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #4 am: 27.07.09 - 10:48:25 »
ich benutze zum dekodieren den sun.misc.BASE64Decoder, ich denke nicht, dass der mir irgendwelche "Übersetzungsfehler" produziert.

Allerdings habe ich in den dxl Files immer noch die Struktur:
Code
<picture ... >
   <notesbitmap ... >
      xp9...

offensichtlich wird vom dxlexporter nicht nach gif transferiert, obwohl es in den Optionen eingestellt ist. Irgendwer eine Idee, woran das liegen könnte?

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #5 am: 27.07.09 - 13:33:29 »
hab jetzt das gefunden. Kann mir jemand sagen, ob/wie ich diese "Database Property" auslesen kann? Zugriff auf einen Designer habe ich leider nicht.

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #6 am: 27.07.09 - 13:55:04 »
ok, selber gemerkt, dass ich dazu keinen Designer brauche. Im Client unter Datenbank->Eigenschaften kann mans ja einsehen. Allerdings, Property ist nicht gesetzt. Daran kann es also auch nicht liegen.

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #7 am: 28.07.09 - 14:30:37 »
Ich bin immer noch nicht weiter, nach wie vor die selbe Situation,:
Code
dxlExporter.setConvertNotesBitmapsToGIF(true);

erzeugt (zb):

Code
<picture height="32px" width="189px" align="baseline">
<notesbitmap>
xP9SAAQAAQAAADoAAAAAAAAAAAAAAAAAaHR0cDovL3d3dy5hbGRpLXN1ZWQuZGUvZGUvbWVkaWEv
aW1nL2t3MzIwOV9tb18xNWJfMXgxLmpwZ5UAJgAAAL0AIAAAAAAACAAAAAAAAAC9ACAAAAAAAAAA
AAAAAAAA
</notesbitmap></picture>

Hat überhaupt schonmal irgendjemand erfolgreich mit der Option gearbeitet unter Java?

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #8 am: 28.07.09 - 18:15:05 »
ok, selber gemerkt, dass ich dazu keinen Designer brauche. Im Client unter Datenbank->Eigenschaften kann mans ja einsehen. Allerdings, Property ist nicht gesetzt. Daran kann es also auch nicht liegen.
Welche Property meinst du damit?

Unter Java hab ich den DXL-Exporter noch nicht verwendet, unter LS funktioniert der GIF-Export jedenfalls (bei mir)

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #9 am: 29.07.09 - 09:43:14 »
ok, selber gemerkt, dass ich dazu keinen Designer brauche. Im Client unter Datenbank->Eigenschaften kann mans ja einsehen. Allerdings, Property ist nicht gesetzt. Daran kann es also auch nicht liegen.
Welche Property meinst du damit?
Ok, vielleicht hätte ich nicht nur den Link setzen, sondern auch direkt ein Zitat einbinden sollen:
Zitat von: http://www-01.ibm.com/support/...
This setting works as intended as long as the Database property "Display images after loading" is not used.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #10 am: 29.07.09 - 16:20:48 »
ja, den Link hab ich nicht gesehen  :o, den hast du zu gut versteckt....
Also diese Property ist bei mir bei allen DB's "aus".
Falls sie ein ist, sehe ich keine Möglichkeit, einfach an die Bilder ran zu kommen, da man die Dokumente im UI öffnen und speichern musst.

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #11 am: 29.07.09 - 16:36:00 »
sorry wegen dem Link, nächste mal mache ich es besser kenntlich. :)

Leider bringt mich das nur so gar nicht weiter, da ich die Property ja wie gesagt in den entsprechenden Datenbanken schon gecheckt hatte. Überall ausgeschaltet.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #12 am: 30.07.09 - 09:17:31 »
Also, ich hab jetzt nochmal geschaut. In LS klappt es definitiv wenn die Property ausgeschaltet (= KEIN Haken) ist. War bei dieser DB immer aus (und ist soweit ich weiß auch die Defaulteinstellung)

Code
<border style="solid" width="1px"/>
<gif originalformat="notesbitmap">
R0lGODlhYwFxAOcAAP///+jo6ODg4AAAAMDAwICAgNj

Unter java-> keine Ahnung. Evtl ist auch die Clientversion dran schuld.
Schau doch mal ob es hiermit klappen würde, bevor du alle Properties der DB verstellst:
http://www.openntf.org/Projects/codebin/codebin.nsf/0/DE60568D19EA514F86257057006BF308

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #13 am: 30.07.09 - 10:30:23 »
Danke, aber ich hab absolut keine Ahnung Ahnung von LS. Hab die Datei zwar runtergeladen und im Designer geöffnet und gesehen, dass ein Agent enthalten ist, wie ich diesen aber nun aus meiner Javaanwendung heraus aufrufe, weiss ich nicht. Ausserdem habe ich die Methode, die dort in dem Agenten aufgerufen wird nicht finden können, was aber wohl eher daran liegt, dass ich von der Handhabe des Designer so gut wie null Ahnung habe.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #14 am: 30.07.09 - 11:50:24 »
Also, ich dachte eigentlich, dass du einfach ausprobierst, ob du mit LS einen korrekten Export hin bekommst.

(Kurze Zwischenfrage: Ist das jetzt eine fertige Lösung oder von dir in Java programmiert? Machst du das nicht im Designer oder wie? Wie gut kennst du dich in der Notesprogrammierung allgemein aus?)

Um den Fehler einzugrenzen würd ich folgendes machen.
0. im LS-Agent ggf. den Pfad ausbessern (standardmäßig auf C:\)
1. DB im Client öffnen, in der Ansicht ein Dokument wählen, z.B. Multiple mixed images (imported and pasted)
2. Aktion->Export pictures from selected
Es sollten alle Bilder korrekt exportiert werden

dann kannst du den Agenten + Script Lib in deine Anwendung kopieren und selbiges ausprobieren.
Wenn hier auch alle Bilder korrekt exportiert werden (wovon ich ausgehe) liegt der Fehler NICHT an den DB-Properties.

Da du ein Dokument außerhalb von Notes darstellen willst, könntest du das auch über den HTTP-Task holen?

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #15 am: 30.07.09 - 12:37:38 »
...
(Kurze Zwischenfrage: Ist das jetzt eine fertige Lösung oder von dir in Java programmiert? Machst du das nicht im Designer oder wie? Wie gut kennst du dich in der Notesprogrammierung allgemein aus?)
Das ganze ist eine von mir in Java implementierte Geschichte. Vom Designer habe ich wie gesagt überhaupt keine Ahnung. Ich implementiere meinen Code in Eclipse und seh dann, was dabei rumkommt :)
"Auskennen" ist bzgl. Notesprogrammierung vielleicht etwas hochgegriffen. Ich wurde zum Projekt beginn ins kalte Wasser geworfen nach dem Motto : "mach mal!", und hatte vorher noch nie einen Dominoserver o.Ä. angefasst. Dabei wurde mir hier ja auch schon jede Menge Hilfestellung gegeben, wofür ich auch überaus dankbar bin. Inzwischen komme ich mit der API ja auch ganz gut zurecht und mein Projekt erfüllt auch seinen Zweck, die letzte Hürde ist halt die korrekte Behandlung von aus dem Dominoserver extrahierten HTML-Dokumenten (speziell: die korrekte Darstellung der enthaltenen Grafiken).

Um den Fehler einzugrenzen würd ich folgendes machen.
0. im LS-Agent ggf. den Pfad ausbessern (standardmäßig auf C:\)
1. DB im Client öffnen, in der Ansicht ein Dokument wählen, z.B. Multiple mixed images (imported and pasted)
2. Aktion->Export pictures from selected
Es sollten alle Bilder korrekt exportiert werden

dann kannst du den Agenten + Script Lib in deine Anwendung kopieren und selbiges ausprobieren.
Wenn hier auch alle Bilder korrekt exportiert werden (wovon ich ausgehe) liegt der Fehler NICHT an den DB-Properties.

ok, das werde ich mal versuchen.

Da du ein Dokument außerhalb von Notes darstellen willst, könntest du das auch über den HTTP-Task holen?


Das diese Möglichkeit besteht, war mir zwar bereits bewusst, allerdings habe ich bei meinen Recherchen dazu, wenig Infos gefunden, wie man an diesen Task (java-seitig) rankommt.

Inwischen habe ich die Mails mal mit javax.mail aus dem Dominoserver geholt, und siehe da, wunderbarer HTML-Code, allerdings hilft mir das nicht wirklich, denn dazu müsste ich jedes einzelne Benutzerkennwort kennen, ich bin aber auf das Rechtemanagement (und Gruppenverwaltung) (ich bin admin und darf alles!) Seitens Domino angewiesen.

Trotzdem vielen Dank für Deine Bemühungen.

Gruß,

Sebastian


Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #16 am: 14.08.09 - 10:50:17 »
Da ich nach wie vor keine Lösung für mein Problem gefunden habe:

Wie komme ich denn javaseitig an den HTTP-Task ran? Könnte mir in die Richtung gehend evtl. mal jemand einen Denkanstoss geben? Danke!

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #17 am: 14.08.09 - 15:29:09 »
Per TCP/IP auf die IP des Servers mit Port 80 verbinden und einen entsprechenden HTTP-Request absetzen
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #18 am: 15.08.09 - 19:45:38 »
jakarta commons HTTPClient.
Beispiele sind im download dabei.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Sebastianh

  • Gast
Re: DXL-Exporter und Gif (setConvertNotesBitmapsToGIF)
« Antwort #19 am: 19.08.09 - 10:40:07 »
Ok, danke dafür schonmal. Allerdings schliesst sich hier direkt die nächste Frage an. Eine Url zu einem Dokument sieht ja folgendermaßen aus:

Code
http://localhost/mail/abc.nsf/38d46bf5e8f08834852564b500129b2c/23ddf72b2fdf5805c12575460049c8a8?OpenDocument

Wenn ich jetzt im Javacode via
Code
String notesUrl = dokument.getNotesURL();
versuche an eben diese Informationen zu kommen, um mir die URL zusammenzubasteln, bekomme ich sowas wie:

Code
notes://host@domain/__C12574CD0039310A.nsf/0/48BFEFCF4F037AB9C125754600499DB5?OpenDocument
(die Urls gehören jetzt nicht beide zum selben Dokument)

kann ich davon ausgehen, dass die URL die ich von dokument.getNotesURL() bekomme, (abgesehen von dem prefix "notes") genau die ist, die ich brauche um via http-task an das Dokument zu kommen? (irgendwie erschliesst sich mir nicht wirklich, was der erste Teil (also ...nsf/X/92479238284ß?OpenDocument .. X) sein soll, und warum hier ein (offensichtlich) interner Mailboxname benutzt wird)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz