Search the FirstSpirit Knowledge Base
Hallo zusammen!
Ich bin gerade in eine Sackgasse geraten. Über ein Importerskript erstellen wir uns im Projekt unseren Strukturbaum. Dabei werden auch ContentProjektions-Seiten erstellt, und für diese PageRefs müssen die Content2Params gesetzt werden. Nun gibt es auf PageRef die Methode getContent2Params() die mir ein solches Objekt liefert, nur kann ich die geänderten Parameter nicht mehr mittels eines setContent2Params(c2p) zurückspielen. Die Access-API sagt hier schlicht, dass es eine solche Methode nicht gibt.
Gibt es hier eine andere Möglichkeit die neuen Parameter der Seitenreferenz mitzuteilen oder muss ich gar nichts machen, da ich auf einer Referenz der Content2Params arbeite (somit die Parameter on-the-fly ändere)?
FirstSpirit Client 4.2.462.49626
Benutzer: Admin
Gruppen (Projekt): Administrators, Everyone
Version Server: 4.2.462.49626
Java Version: 1.6.0_30 32bit Sun Microsystems Inc.
Betriebssystem: Windows 7 6.1 x86
Vielen Grüße aus Hamburg,
Nils
Hallo Nils,
Gibt es hier eine andere Möglichkeit die neuen Parameter der Seitenreferenz mitzuteilen oder muss ich gar nichts machen, da ich auf einer Referenz der Content2Params arbeite (somit die Parameter on-the-fly ändere)?
Es muss kein Setter aufgerufen werden, wenn es sich um eine neu angelegte Seitenreferenz handelt, die auf einer Seite mit einem Content-Absatz handelt.
Hier reicht dann:
final PageRef pageRef = folder.createPageRef("hurz", page, true);
pageRef.setLock(true, false);
try {
final Content2Params params = pageRef.getContent2Params();
params.setRecordCountPerPage(5);
.....
pageRef.save("created by importer", false);
} finally {
pageRef.setLock(false, false);
}
Es gibt nur einen Sonderfall, wenn sich bei einer bestehenden Seitenreferenz der Content-Absatz der zugehörigen Seite geändert hat (zu einer anderen Tabelle gehört), aber das scheint ja hier nicht der Fall zu sein.
Gruss
Hallo Nils,
Gibt es hier eine andere Möglichkeit die neuen Parameter der Seitenreferenz mitzuteilen oder muss ich gar nichts machen, da ich auf einer Referenz der Content2Params arbeite (somit die Parameter on-the-fly ändere)?
Es muss kein Setter aufgerufen werden, wenn es sich um eine neu angelegte Seitenreferenz handelt, die auf einer Seite mit einem Content-Absatz handelt.
Hier reicht dann:
final PageRef pageRef = folder.createPageRef("hurz", page, true);
pageRef.setLock(true, false);
try {
final Content2Params params = pageRef.getContent2Params();
params.setRecordCountPerPage(5);
.....
pageRef.save("created by importer", false);
} finally {
pageRef.setLock(false, false);
}
Es gibt nur einen Sonderfall, wenn sich bei einer bestehenden Seitenreferenz der Content-Absatz der zugehörigen Seite geändert hat (zu einer anderen Tabelle gehört), aber das scheint ja hier nicht der Fall zu sein.
Gruss
Hallo Sebastian,
läuft! Vielen Dank! Sollte vielleicht in die JavaDoc der Methode rein.
Beste Grüße
Es ist generell so, dass StoreElemente ohne ID also einfache Kinder von Knoten mit ID geändert werden können, ohne dass diese Änderung durch einen Setter zurückgeschrieben werden muss. (z.B. LanguageInfo, Picture, File, PageLangSpec, ...)
Ein save() des korrespondierenden Vater-IDProviders reicht hier aus.