-
Notifications
You must be signed in to change notification settings - Fork 607
Description
Similar to #3140 but the root cause is different I believe.
On latest 6.15.4 and AEM 6.5.1 LTS I'm getting the MCP reports empty due to exception below during serialization of field requestInputs in com/adobe/acs/commons/mcp/model/ManagedProcess.java. List with ArchivedProcessInstance objects is serialized on top level.
To reproduce it's enough to run any MCP, e.g. deep prune or workflow removal. Please check.
The fix could be adding org.apache.sling.api.resource.ValueMap to list IGNORED_CLASSES of ControlledProcessManagerServlet, that fixes issue for me.
Exception:
java.lang.IllegalArgumentException: javax.jcr.RepositoryException: This session has been closed. at org.apache.sling.jcr.resource.internal.JcrValueMap.readFully(JcrValueMap.java:389) at org.apache.sling.jcr.resource.internal.JcrValueMap.entrySet(JcrValueMap.java:193) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:206) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:145) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:245) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:245) at com.google.gson.internal.bind.ObjectTypeAdapter.write(ObjectTypeAdapter.java:126) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69) at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:97) at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:61) at com.google.gson.Gson.toJson(Gson.java:735) at com.google.gson.Gson.toJson(Gson.java:714) at com.google.gson.Gson.toJson(Gson.java:669) at com.google.gson.Gson.toJson(Gson.java:649) at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733) at com.intellij.rt.debugger.MethodInvoker.invokeInternal(MethodInvoker.java:223) at com.intellij.rt.debugger.MethodInvoker.invoke1(MethodInvoker.java:35) at com.adobe.acs.commons.mcp.impl.ControlledProcessManagerServlet.doGet(ControlledProcessManagerServlet.java:121) Caused by: javax.jcr.RepositoryException: This session has been closed. at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.checkAlive(SessionDelegate.java:372) at org.apache.jackrabbit.oak.jcr.delegate.ItemDelegate.checkAlive(ItemDelegate.java:83) at org.apache.jackrabbit.oak.jcr.session.operation.ItemOperation.checkPreconditions(ItemOperation.java:34) at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.prePerform(SessionDelegate.java:676) at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:227) at org.apache.jackrabbit.oak.jcr.session.ItemImpl.perform(ItemImpl.java:113) at org.apache.jackrabbit.oak.jcr.session.NodeImpl.getProperties(NodeImpl.java:677) at org.apache.sling.jcr.resource.internal.JcrValueMap.readFully(JcrValueMap.java:382) ... 240 more