Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung - XPages => Thema gestartet von: traxxed am 18.03.11 - 12:23:55

Titel: Probleme mit 8.5.2 Server unter Linux
Beitrag von: traxxed am 18.03.11 - 12:23:55
Hallo,

ich habe ein Problem mit XPages und Lotus Domino 8.5.2 Server unter Linux.

Und zwar habe ich eine Datenbank, auf der sich die XPages befinden und eine andere Datenbank mit einer bestimmten Ansicht. Die XPages holen sich über Repeater bestimmte Dokumente über die Ansicht in der anderen Datenbank. Dies funktioniert auch mindestens einmal. Danach scheint es aber so, dass die Ansicht in der Datenbank einen "Knacks" bekommen hat. Obwohl ein Dokument mit dem key gefunden werden müsste, gibt es die Fehlermeldung:

Exception occurred calling method NotesView.getDocumentByKey(java.util.Vector)
null

Ebenfalls stürzt der Linux Server sehr schnell ab, wenn über Repeater Daten geladen werden.

Der betreffende simple Code sieht so aus.

[...]
var view:NotesView = db.getView("($all)");
var doc:NotesDocument = view.getDocumentByKey(key);
[...]

Bei Domino Servern unter Windows treten diese Probleme nicht auf. Kann jemand diese Probleme bestätigen, dass plötzlich der Zugriff auf die Ansicht mit getDocumentByKey nicht mehr geht?

Mfg,
Michael
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: m3 am 18.03.11 - 12:42:11
fixup, compact schon gemacht?
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: m3 am 18.03.11 - 12:47:39
Und zeig mal, wie "key" definiert ist und befüllt wird.
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: traxxed am 18.03.11 - 13:12:06
fixup, compact schon gemacht?

ja, hat leider nichts gebracht.

Und zeig mal, wie "key" definiert ist und befüllt wird.

Der Repeater liefert mir eine NotesDocumentCollection (rowData).

Dann will ich über die Dokumente vom Repeater ein anderes Dokument holen, um dann aus dem Dokument einen Wert zu holen.

getDocument(rowData.getItemValue("DocIDString")).getItemValue("fTitle");

Die Funktion:
function getDocument(key){
...
}

Dies funktioniert auch immer wieder und nicht evtl. nur einmal. Die Sache ist die, dass ich eine andere XPage habe, die auch mit Repeatern arbeitet und Daten aus beliebig vielen Dokumenten anzeigt. Da kommen andere Funktionen ins Spiel, die aber auch auf die Ansicht gehen. Wenn ich dann wieder auf die "erste" XPage gehe, kommt der Fehler.
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: m3 am 18.03.11 - 13:13:58
Und zeig mal, wie "key" definiert ist und befüllt wird.
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: traxxed am 18.03.11 - 13:16:07
key ist das hier:

rowData.getItemValue("DocIDString")

und DocIDString wird im Dokument beim Erstellen so befüllt:
@Text(@DocumentUniqueID)

in der Ansicht ist die erste Spalte nach dem Feld sortiert
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: traxxed am 18.03.11 - 15:58:14
Es ist übrigens so:
Wenn ich die "kaputte" Ansicht umbenenne und dieselbe Ansicht erneut mit dem Namen erstelle und dann die entsprechende XPage neu lade, dann geht es wieder. Von daher gehe ich davon aus, dass die Ansicht zerhauen wird. Ich mache nur "getDocumentByKey", dies allerdings sehr oft und schnell hintereinander. Und auch in mehreren unterschiedlichen Funktionen immer nachdem selben Schema, ich hole mir die Datenbank, dann die Ansicht, und dann mach ich "getDocumentByKey", weil anscheinend kann man im SSJS eine DB, Ansicht oder so nicht global speichern.

Bin über jede Idee etc. dankbar.
Titel: Re: Probleme mit 8.5.2 Server unter Linux
Beitrag von: heini_schwammerl am 18.03.11 - 21:38:52
Ich sitze hier gerade in einer Umgebung mit mehreren Linuxservern und 8.5.1 bis 8.5.2 FP1 . Da kracht die XPages Engine zwar alle paar Wochen mit einem OutOfMemory aber der getDocumentByKey funktioniert auf allen Servern.