- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
GuiScriptContext Sessions
Hallo zusammen,
habe folgendes Problem mit meinem guiScriptContext.
Im Code durchlaufe ich alle Projekte um bestimtme Absatzvorlagen zu zรคhlen (~ 40 Projekte).
final GuiScriptContext guiScriptContext = (GuiScriptContext) context.get("context");
final SpecialistsBroker broker = guiScriptContext.getConnection().getBroker();
final AdminService adminService = broker.requireSpecialist(ServicesBroker.TYPE).getService(AdminService.class);
final Project[] projects = adminService.getProjectStorage().getProjects();
Die geรถffneten Session werden danach leider nicht automatisch geschlossen (Fรผr jedes Projekt wird eine Session geรถffnet), daher habe ich versucht das "windowClosing" Event zu erweitern des JDialogs.
@Override
public void windowClosing(WindowEvent e) {
try {
guiScriptContext.getConnection().disconnect();
} catch (IOException e1) {
guiScriptContext.logError("Could not close sessions");
}
}
Hiermit werden die Sessions geschlossen, aber leider hรคngt der SA sich danach komplett auf.
Kann mir jemand verraten wie ich die Sessions ordentlich schlieรen kann, ohne das irgendwas auseinander fliegt?
Viele Grรผรe,
Patrick Wittke
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo Patrick,
werden denn die Sessions geschlossen, wenn Du den SiteArchitect schlieรt? Und/oder nach 20 Minuten Wartezeit?
Anmerkung: Mit den FirstSpirit Versionen 2022.9 und 2022.10 wird es hier einige Anpassungen geben, die das geschilderte Verhalten mรถglicherweise korrigieren. Jedenfalls konnte ich bei eine entsprechenden lokalen Test mit 2022.10 das Problem mit diesem Skript hier nicht reproduzieren (weder als Serverskript noch in einem SiteArchitect)
import de.espirit.firstspirit.access.AdminService;
import de.espirit.firstspirit.access.ServicesBroker;
broker = context.getConnection().getBroker();
adminService = broker.requireSpecialist(ServicesBroker.TYPE).getService(AdminService.class);
projects = adminService.getProjectStorage().getProjects();
for (project:projects) {
context.logInfo("Projekt: " + project.getName() + " / Revision: " + project.getRevision(new Date()));
}
Viele Grรผรe
Holger

