<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: &amp;quot;Read&amp;quot; Permission error in Nuxeo Forum</title>
    <link>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323838#M10839</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;</description>
    <pubDate>Wed, 18 Oct 2017 20:41:24 GMT</pubDate>
    <dc:creator>Vladimir_Pasqui</dc:creator>
    <dc:date>2017-10-18T20:41:24Z</dc:date>
    <item>
      <title>"Read" Permission error</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323837#M10838</link>
      <description>&lt;P&gt;From a workflow task there is called a chain. It creates a new document and starts a new workflow on them.
For two years it has worked well but very rare. Yesterday I was found that it stopped work and returned an error.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;****** WebUI.Refresh ******
Chain ID: wf_MY_startWorkflowFromOtherWorkflow
Chain Aliases: []
Class: RefreshUI
Method: 'run' | Input Type: void | Output Type: void
Input: DocumentModelImpl(yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy, path=/division/workspaces/department/specialfolder/Untitled.1507557422637, title=yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy)
Parameters  | Name: additional list of seam events to raise, Value: workflowNewProcessStarted

****** end sub chain ******

****** end sub chain ******

	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:238)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:97)
	at org.nuxeo.ecm.platform.routing.core.impl.GraphNodeImpl.executeChain(GraphNodeImpl.java:514)
	... 112 more
Caused by: org.nuxeo.ecm.automation.TraceException: org.nuxeo.ecm.automation.TraceException: org.nuxeo.ecm.automation.OperationException: Failed to invoke operation WebUI.Refresh with aliases [Seam.Refresh]
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:240)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:121)
	at org.nuxeo.ecm.automation.core.operations.execution.RunOperation.run(RunOperation.java:61)
	at sun.reflect.GeneratedMethodAccessor1996.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.doInvoke(InvokableMethod.java:164)
	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.invoke(CompiledChainImpl.java:116)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:214)
	... 114 more
Caused by: org.nuxeo.ecm.automation.TraceException: org.nuxeo.ecm.automation.OperationException: Failed to invoke operation WebUI.Refresh with aliases [Seam.Refresh]
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:240)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:121)
	at org.nuxeo.ecm.automation.core.operations.execution.RunOperation.run(RunOperation.java:61)
	at sun.reflect.GeneratedMethodAccessor1996.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.doInvoke(InvokableMethod.java:164)
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:177)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:214)
	... 132 more
Caused by: org.nuxeo.ecm.automation.OperationException: Failed to invoke operation WebUI.Refresh with aliases [Seam.Refresh]
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:189)
	at org.nuxeo.ecm.automation.core.impl.CompiledChainImpl.doInvoke(CompiledChainImpl.java:130)
	at org.nuxeo.ecm.automation.core.impl.OperationServiceImpl.run(OperationServiceImpl.java:214)
	... 160 more
Caused by: org.nuxeo.ecm.core.api.DocumentSecurityException: Privilege 'Read' is not granted to 'userWithReadWrite'
	at org.nuxeo.ecm.core.api.AbstractSession.checkPermission(AbstractSession.java:219)
	at org.nuxeo.ecm.core.api.AbstractSession.getDocument(AbstractSession.java:927)
	at org.nuxeo.ecm.webapp.context.NavigationContextBean.invalidateCurrentDocument(NavigationContextBean.java:229)
	at sun.reflect.GeneratedMethodAccessor2018.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
	at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:196)
	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:114)
	at org.nuxeo.ecm.webapp.context.NavigationContextBean_$$_javassist_seam_13.invalidateCurrentDocument(NavigationContextBean_$$_javassist_seam_13.java)
	at org.nuxeo.ecm.automation.jsf.operations.RefreshUI.run(RefreshUI.java:65)
	at sun.reflect.GeneratedMethodAccessor2294.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.doInvoke(InvokableMethod.java:164)
	at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:177)
	... 179 more
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;The user 'userWithReadWrite' has the 'ReadWrite' permission assigned by the task.
To eliminate the error it is necessary to add extra the 'Read' permission for the user.&lt;/P&gt;
&lt;P&gt;There is used the following code:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;    &amp;lt;chain id="wf_MY_toAccepted"&amp;gt;
      &amp;lt;operation id="Context.FetchDocument"/&amp;gt;
      &amp;lt;operation id="Document.SetLifeCycle"&amp;gt;
        &amp;lt;param type="string" name="value"&amp;gt;accepted&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Audit.Log"&amp;gt;
        &amp;lt;param type="string" name="event"&amp;gt;PCW.gotoAccepted&amp;lt;/param&amp;gt;
        &amp;lt;param type="string" name="category"&amp;gt;ProcessChange&amp;lt;/param&amp;gt;
        &amp;lt;param type="string" name="comment"&amp;gt;expr:@{nodeLastActor}
comment: @{NodeVariables["comment"] != empty?NodeVariables["comment"].length()&amp;gt;900?NodeVariables["comment"].substring(0,900):NodeVariables["comment"]:""}&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Context.RunOperation"&amp;gt;
        &amp;lt;param type="string" name="id"&amp;gt;wf_MY_startNewWorkflow&amp;lt;/param&amp;gt;
        &amp;lt;param type="boolean" name="isolate"&amp;gt;true&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
    &amp;lt;/chain&amp;gt;

    &amp;lt;chain id="wf_MY_startNewWorkflow"&amp;gt;
      &amp;lt;operation id="Context.RunOperation"&amp;gt;
        &amp;lt;param type="string" name="id"&amp;gt;wf_MY_initWorkflow&amp;lt;/param&amp;gt;
        &amp;lt;param type="boolean" name="isolate"&amp;gt;false&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;	
      &amp;lt;operation id="Context.RunOperation"&amp;gt;
        &amp;lt;param type="string" name="id"&amp;gt;wf_MY_startWorkflowFromProcessChange&amp;lt;/param&amp;gt;
        &amp;lt;param type="boolean" name="isolate"&amp;gt;false&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;	
    &amp;lt;/chain&amp;gt;

	&amp;lt;chain id="wf_MY_initWorkflow"&amp;gt;
      &amp;lt;operation id="Document.Fetch"&amp;gt;
        &amp;lt;param type="document" name="value"&amp;gt;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Document.Create"&amp;gt;
        &amp;lt;param type="string" name="type"&amp;gt;File&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Document.SetProperty"&amp;gt;
        &amp;lt;param type="string" name="xpath"&amp;gt;dc:title&amp;lt;/param&amp;gt;
        &amp;lt;param type="boolean" name="save"&amp;gt;true&amp;lt;/param&amp;gt;
        &amp;lt;param type="serializable" name="value"&amp;gt;Test read permission&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Document.SaveSession"/&amp;gt;
      &amp;lt;operation id="Context.SetVar"&amp;gt;
        &amp;lt;param type="string" name="name"&amp;gt;currentDoc&amp;lt;/param&amp;gt;
        &amp;lt;param type="object" name="value"&amp;gt;expr:Document.id&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;  
    &amp;lt;/chain&amp;gt;
    
	&amp;lt;chain id="wf_MY_startWorkflowFromOtherWorkflow"&amp;gt;
      &amp;lt;operation id="Document.Fetch"&amp;gt;
        &amp;lt;param type="document" name="value"&amp;gt;expr:@{currentDoc}&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Auth.LoginAs"&amp;gt;
        &amp;lt;param type="string" name="name"&amp;gt;userWithReadWrite&amp;lt;/param&amp;gt; 	 
      &amp;lt;/operation&amp;gt;
	  &amp;lt;operation id="Context.StartWorkflow"&amp;gt;
        &amp;lt;param type="string" name="id"&amp;gt;MyNewWorkflow&amp;lt;/param&amp;gt;
        &amp;lt;param type="boolean" name="start"&amp;gt;true&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
      &amp;lt;operation id="Seam.Refresh"&amp;gt;
        &amp;lt;param type="stringlist" name="additional list of seam events to raise"&amp;gt;workflowNewProcessStarted&amp;lt;/param&amp;gt;
      &amp;lt;/operation&amp;gt;
    &amp;lt;/chain&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;As I wroted it has worked many times but now it does not.
I have not checked yet where the source of problem is.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Oct 2017 05:30:15 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323837#M10838</guid>
      <dc:creator>adam_bo_</dc:creator>
      <dc:date>2017-10-10T05:30:15Z</dc:date>
    </item>
    <item>
      <title>Re: "Read" Permission error</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323838#M10839</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;</description>
      <pubDate>Wed, 18 Oct 2017 20:41:24 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323838#M10839</guid>
      <dc:creator>Vladimir_Pasqui</dc:creator>
      <dc:date>2017-10-18T20:41:24Z</dc:date>
    </item>
    <item>
      <title>Re: "Read" Permission error</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323839#M10840</link>
      <description>&lt;P&gt;When the task is finished by the user than first the system removes the ReadWrite permission granted to the user by task and then is executed a chain in "rnode&lt;/P&gt;</description>
      <pubDate>Mon, 23 Oct 2017 15:14:27 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/quot-read-quot-permission-error/m-p/323839#M10840</guid>
      <dc:creator>adam_bo_</dc:creator>
      <dc:date>2017-10-23T15:14:27Z</dc:date>
    </item>
  </channel>
</rss>

