marcus_rommel
I'm new here

Workflow-Skript im ContentCreator - Element laden

Jump to solution

Hallo,

ich hoffe ihr könnt mir helfen. Ich bin mittlerweile etwas ratlos.

Unser Löschworkflow funktioniert im JavaClient wunderbar, aber im ContentCreator tut er gar nichts.

Das Problem auf das ich stoße ist, dass er das Element nicht holen kann. Nun ist das Skript im WebeditWorkflowScriptContext und um an das Element zu kommen soll in 5.1 ja nun der ClientScriptContext benutzt werden. Das funktioniert bei mir aber leider nicht. Ich kann den context nicht konvertieren.

ClientScriptContext clientScriptContext = (ClientScriptContext) context;
StoreElement element = clientScriptContext.getElement();

Leider behebt das mein Problem nicht. Der clientScriptContext ist weiterhin vom Typ WorkflowScriptContext.

Führe ich das Skript an sich im ContentCreator aus ist es stattdessen im ScriptContext und ich bekomme es wiederrum nicht in den ClientScriptContext.

Das .getElement() gibt mir natürlich null zurück und es passiert nichts weiter.

Was ich aber garnicht nachvollziehen kann ist, dass es nur im ContentCreator zu diesem Problem kommt. Im JavaClient läuft alles.

Danke für eure Hilfe

0 Kudos
1 Solution

Accepted Solutions
der_sk
I'm new here

Hallo Marcus,

versuch mal WorkflowScriptContext.getWorkflowable(), das funktioniert afaik in beiden Clients.

Viele Grüße,

Sascha Körver

adesso AG

View solution in original post

0 Kudos
5 Replies
der_sk
I'm new here

Hallo Marcus,

versuch mal WorkflowScriptContext.getWorkflowable(), das funktioniert afaik in beiden Clients.

Viele Grüße,

Sascha Körver

adesso AG

0 Kudos

Danke, das hat geholfen.

Schade das das so aus der Doku nicht hervorgeht.

Grüße

Marcus

0 Kudos

Guten Abend,

ich bekomme im gleichen Anwendungsfall mit WorkflowScriptContext.getWorkflowable() im ContentCreator null zurück. Gibt es auch einen Weg, der im CC auf jeden Fall funktioniert?

(FS Server-Version: 5.1.311.65223)

0 Kudos
StefanSchulz
I'm new here

Hallo Marcus,

auch, wenn deine Frage bereits beantwortet ist, freue ich mich, wenn du mir weitere Informationen zu deinem Fall geben könntest. Möglicherweise sollte die Dokumentation hier präzisiert oder ergänzt werden.

Marcus Rommel schrieb:

Das Problem auf das ich stoße ist, dass er das Element nicht holen kann. Nun ist das Skript im WebeditWorkflowScriptContext und um an das Element zu kommen soll in 5.1 ja nun der ClientScriptContext benutzt werden. Das funktioniert bei mir aber leider nicht. Ich kann den context nicht konvertieren.

ClientScriptContext clientScriptContext = (ClientScriptContext) context;
StoreElement element = clientScriptContext.getElement();


Leider behebt das mein Problem nicht. Der clientScriptContext ist weiterhin vom Typ WorkflowScriptContext.


Eine solche "Konvertierung" ist auch nicht nötig. Ein WebeditWorkflowScriptContext ist ein ClientScriptContext (siehe Vererbungshierarchie laut Javadoc). Ein solcher Cast ist nur dann nötig, wenn die Ableitung im Nutzungsfall für den Interpreter bzw. Compiler nicht sichtbar ist.

Welchen Typ hat denn das Element, auf dem der Workflow arbeitet? Üblicherweise liefert die Methode getElement() das gleiche zurück, wie getWorkflowable(), außer, das Element ist nicht mit IDProvider kompatibel.

Beste Grüße

Stefan

0 Kudos

Ich nehme meine Frage zurück. Habe den Workflow fälschlicherweise ohne Kontext ausgeführt. Im richtigen Kontext funktioniert alles wie beschrieben. Trotzdem vielen Dank!

0 Kudos