Alfresco community edition returns 500 internal error when trying to unshare a file which is in users' private site.
Failed to execute http://localhost:8080/alfresco/s/api/internal/shared/unshare/3uIfYLFlSlGIJXLURf2opg?alf_ticket=TICKET_0c51707f6775f7dd98c8977546c2c3edca996d48 {"status":{"code":500,"name":"Internal Error","description":"An error inside the HTTP server which prevented it from fulfilling the request."}, "message":"01250010 Wrapped Exception (with status template): null","exception":"org.springframework.extensions.webscripts.WebScriptException - 01250010 Wrapped Exception (with status template): null", "callstack":["","java.lang.NullPointerException","org.alfresco.repo.web.scripts.quickshare.UnshareContentDelete.executeImpl(UnshareContentDelete.java:96)","org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:64)","org.alfresco.repo.web.scripts.RepositoryContainer$3.execute(RepositoryContainer.java:489)","org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:457)","org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecute(RepositoryContainer.java:551)","org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecuteAs(RepositoryContainer.java:619)","org.alfresco.repo.web.scripts.RepositoryContainer.executeScriptInternal(RepositoryContainer.java:399)","org.alfresco.repo.web.scripts.RepositoryContainer.executeScript(RepositoryContainer.java:280)","org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:378)","org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)","org.springframework.extensions.webscripts.servlet.WebScriptServlet.service(WebScriptServlet.java:132)","javax.servlet.http.HttpServlet.service(HttpServlet.java:727)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)","org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)","org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)","org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)","org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)","org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)","org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)","org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)","org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)","org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)","org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)","org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)","org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)","org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2466)","org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2455)","java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)","java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)","org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)","java.lang.Thread.run(Thread.java:745)","org.springframework.extensions.webscripts.WebScriptException: 01250010 Wrapped Exception (with status template): null","org.springframework.extensions.webscripts.AbstractWebScript.createStatusException(AbstractWebScript.java:1127)" ], "server":"Community v5.0.0 (d r99759-b2) schema 8,022","time":"Feb 25, 2016 3:23:43 PM"}
I think because admin is not a collaborator on the site, he doesn't have a role associated which causes the null pointer exception at UnshareContentDelete.java:96 if(role.equals(SiteModel.SITE_CONSUMER)|| role.equals(SiteModel.SITE_CONTRIBUTOR))
If admin is manually added as a collaborator to the site, the rest call succeeds.
Is there any other temporary quick fix for testing (making the admin a site manager, unsharing the file and removing?)