Hallo zusammen,
so gerne wie ich mich mit den XPages beschäftige.....manchmal treiben sie mich in den Wahnsinn!
Bei der Entwicklung einer Veranstaltungs-DB bin ich auf ein merkwürdiges Problem gestoßen:
Rahmen:XPage 1 - Erzeugung von Dokumenten, die als "Vorlagen" für Veranstaltungen dienen
- Binding mit Maske "Vorlagen"
- Textfelder und RT-Felder
XPage 2 - Erzeugung von Dokumenten, die auf Basis der Vorlagen eine "Veranstaltung" anlegen
und später über eine Ansicht aufgerufen werden können.
- Binding mit Maske "Veranstaltungen"
- Textfelder und RT-Felder
Vorgehensweise1. Die XPage 1 besteht aus handelsüblichen Textfeldern und u. a. zwei RichText - Feldern in die
neben Links, formatierte Text etc. kleine Bilder (z. B. Symbole, oder kleinere Fotos) abgelegt
werden. Sobald alle Angaben gemacht sind, wird das Dokument gespeichert
und fertig.
2. Sobald die Vorlage später mal wieder benötigt wird, wird das Dokument aufgerufen (ohne
nochmals editiert zu werden) und über einen Button "Veranstaltung aus dieser Vorlage erstellen"
für alle Felder SessionScope-Variablen erstellt. Beispiel für eines der RT-Felder:
var val6 = getComponent("Seminarinhalte").getValue();
sessionScope.put("varSeminarinhalte", val6); um die Inhalte auf der anschließend aufgerufenen XPage 2 zu
übernehmen (Neues Dokument!). Die Übernahme der Daten erfolgt bei den
RT-Feldern über den Vorgabewert des Feldes. Beispiel:
sessionScope.get("varSeminarinhalte")3. Auf der XPage 2 werden dann individuelle Daten in weiteren Feldern hinzugefügt (z. B. Datum,
Beginn etc.) und das neue Dokument abgespeichert.
4. Die Mitarbeiter können das Veranstaltungsdokument über eine View aufrufen und sich über die
entsprechende Veranstaltung informieren, sich dort anmelden und und und....Fertig!
ProblemIch musste leider feststellen, dass das Veranstaltungsdokument aus der Xpage2 die Inhalte der RT-Felder nicht sauber speichert, wenn ich "keine Änderung" nach Übernahme der Inhalte aus XPage 1 vornehme....das Dokument also ohne diese Felder zu berühren, speichere.
Ändere ich stattdessen den Inhalt...z. B. durch hinzufügen eines Zeichens, oder durch manuelles ausschneiden und wieder einfügen des Inhaltes (ich weiß leider nicht, wie ich das per Script mache....), dann werden zumindest die Textformatierungen und Links beim Speichern sauber eingetragen......allerdings bleibt es dabei, das die Bilder nicht angezeigt werden, nachdem das Dokument gespeichert und wieder aufgerufen wurde.
AnalysenDas Problem habe ich nur bei den Veranstaltungen (also Dokumenten aus XPage2)! Wenn ich ein neues Dokument über die XPage1 erzeuge (also eine Vorlage), dann werden die Texte und Bilder bis zum jüngsten Tag sauber und ordentlich in den besagten Feldern angezeigt.
Das Problem beschränkt sich innerhalb des Dokumentes auch nur auf die RT-Felder. Ganz normale Textfelder werden sauber gespeichert und ohne zu ändern auch nach speichern sauber angezeigt.
Ich habe mir die Databindings jetzt mehrfach angesehen. Hier scheint alles i. O. zu sein. Jede XPage ist sauber mit der ensprechenden Form verbunden. Auch die Feldtypen sind als RichText vermerkt.
Hr. Google und die Suchfunktion sind natürlich schon ausführlich gefragt worden. Ein Arbeitskollege sagt mir, dass er schonmal irgendwo etwas ähnliches davon gelesen hätte, dass es sich um einen Bug handele, dass die RT-Felder nach füllen durch Vorgabewerte, bei "nicht verändern" nicht gespeichert würden. Genaueres konnte er mir aber auch nicht sagen......
Meine BitteHat jemand ein ähnliches Problem schonmal gehabt.....und konnte es lösen? Oder könnte mir jemand einen Hinweis geben, wie ich diesen Fehler beheben kann?
Wäre nett, wenn mir jemand einen Tipp geben könnte.
Danke und Gruß Tobias
P. S.: Danke für`s bis hierhin mitlesen.....ist ganz schön viel geworden.....