mkoch
I'm new here

"Method Invocation" Error

Hallo zusammen,

ich versuche in einem Script einen Lock zu setzen, nur bekomme ich in der Fehlervorschau immer die Fehlermeldung:

31.05.2012 10:30:10.332 ERROR (Script '...' (id=...) at 0, 0):  at 0, 0: Method Invocation csNl.setLock at line 67

Der zugehörige Code sieht wie folgt aus:

contentStore= context.getUserService().getStore(Store.CONTENT_STORE , false);

Content2 csNl = contentStore.getStoreElement("...", IDProvider.UidType.CONTENTSTORE);

Schema schema= csNl.getSchema();

Session session = schema.getSession();

Entity entity = session.find("...", new Object[] { itemId } );

csNl.lock(entity);

csNl.setLock(true, false);

Vielen Dank im Voraus,

Markus

0 Kudos
3 Replies
Peter_Jodeleit
Crownpeak employee

Die Methode Content2.setLock(boolean, boolean)gibt es nicht (im geposteten Fragment Zeile 12, im Orginal wohl Zeile 67).

[EDIT]

Falsch, die Methode wird natürlich über  StoreElement vererbt.

Die Meldung muss also eine andere Ursache haben. Bitte den kompletten Trace posten.

[EDIT2]

"Fehlervorschau" -> Wird das Skript aus der Vorschau heraus aufgerufen? In der Vorschau (und der Generierungen) sind keine verändernden Operationen möglich. Was ist denn der Anwendungsfall?

Peter
0 Kudos

Ich verwende das Script in einer Seitenvorlage und verwende die Vorschau des Seiteninhalts zum Debuggen, da man beim Aufruf der Seite selbst nichts vom Script zu sehen bekommt.

Ich habe momentan das Problem, dass ich die gleiche Fehlermeldung wie oben für den .lock() Befehl bekomme.

Die Fehlermeldung:

31.05.2012 14:18:15.821 ERROR (Script '...' (id=272534) at 0, 0):  at 0, 0: Method Invocation csNl.lock at line 66

    inside of: Template 'scripttest' (id=272535)

    inside of: $CMS_RENDER(script:"...", variable:ids)$ - at 6, 1

    inside of: Script '...' (id=272534) - at 0, 0

Der Anwendungsfall ist folgender:

Ich habe eine Newsletterseite auf der diverse Artikel dargestellt werden. Nachdem die Seite generiert wurde, sollen die verwendeten Datensätze insofern angepasst werden, dass ein bestimmtes Flag auf false gesetzt wird. Das funktioniert soweit auch, nur das setzen des Locks will noch nicht.

0 Kudos

Bitte mal zu Testzwecken im Template ergänzen: $CMS_SET(#global.debugMode, true)$ (oder $CMS_SET(#global.debugMode, #global.isPreview)$, dann wirkt sich das nur in der Vorschau aus).

Damit bekommst du den kompletten Java-Trace der Fehlermeldung.

Peter
0 Kudos