„Resource ist bereits geschlossen“ in den Protokollen

Problem

Einer der folgenden Fehler wird in den AEM protokolliert:

java.lang.IllegalStateException:This session has been closed at

java.lang.IllegalStateException: Resource resolver is already closed.

Ursache

Dies kann verursacht werden durch multi-threaded Verwendung desselben ResourceResolver oder durch Schließen eines ResourceResolver oder javax.jcr.Session, die Sie in Ihrem eigenen Code nicht geöffnet haben.

Lösung

Session und ResourceResolver, die über SlingRequest oder WorkflowSession erhalten werden, werden nicht von Ihrer Anwendung geschlossen.  Zum Beispiel:

slingRequest.getResourceResolver().adaptTo(Session.class);
//Or
workflowSession.getSession();

Der Resolver oder die Session wird automatisch geschlossen, nachdem der Request verarbeitet wurde.

 Adobe

Schneller und einfacher Hilfe erhalten

Neuer Benutzer?