Hallo Marcus,
wie Marting schrieb, gibt es keine Out-Of-Box-Lösung.
Allerdings kann man, wenn man das möchte, sich folgenden Workaround in der Executable schaffen (context ist der BaseContext aus der Args-Map):
if (context.is(BaseContext.Env.WEBEDIT)) { // ContentCreator
// Hier muss man sich überlegen
} else if (context.is(BaseContext.Env.PREVIEW)) { // SiteArchitect
// Hier kann man etwas mit Swing bzw. ProgressMonitor machen, da der SiteArchitect auf Swing basiert
}
ProgressMonitor:
https://blogs.oracle.com/CoreJavaTechTips/entry/making_progress_with_swing_s
Für den ContentCreator ist das leider etwas komplizierter, hier müsste man sich etwas ausdenken, wie man den Fortschritt der Aufgabe in in die Vorschau bekommt. Auch hier kann man im FS-Templatecode den Fall Content-Creator isolieren:
$CMS_IF(#global.is("WEBEDIT"))$
$-- Status der Aufgabe auslesen und z.B. in einem Inline-Popup mit JQuery anzeigen -->
$CMS_END_IF$
Wie kann man nun Daten in eine Seite bekommen? Wenn man an den GenerierungsContext kommt, ist das einfach:
if (context instanceof GenerationContext) {
GenerationContext generationContext = (GenerationContext) context;
generationContext.getPageContext().setVariableValue("taskStatus", status);
}
Das Ganze oben ist nur eine grobe Idee die ich so noch nie ausprobiert habe und die Umsetzung hängt auch vom Kontext ab in dem die Executable aufgerufen wird. Vielleicht kommt man auch anders an den PageContext ran? Grob gesagt ist das für den ContentCreator nicht so ganz einfach, weshalb hier ein Feature-Request von Dir nicht schlecht wäre. Man kann aber auch den ContentCreator-Fall so lassen wie er ist und nur im SiteArchitect eine "schöne" Lösung mit Prozessdialog schaffen.
Tipp: Eigentlich sollten zeitintensive Aufgaben in FS nicht per Executable in den Clients, sondern per Auftrag auf dem Server erledigt werden (die dann über ServerManager oder ServerMonitoring beobachtet werden können). Innerhalb eines Auftrages kann man aber wieder mit Executables arbeiten, so dass hier Dein Java-Code wiederverwendet werden kann (ggf. mit Anpassungen).
Grüße Marian