<?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: How to check out a document to a different user in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259806#M212936</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have got it working now.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Previously I had failed to call AuthenticationUtil.setFullyAuthenticatedUser(user)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is my working code&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;final String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&lt;BR /&gt;NodeRef checkedOutCopy = null;&lt;BR /&gt;AuthenticationUtil.setFullyAuthenticatedUser(String.valueOf(workingCopyOwner));&lt;BR /&gt;if (log.isDebugEnabled()) log.debug("set fully authenticated user to '" + String.valueOf(workingCopyOwner) + "'");&lt;BR /&gt;&lt;BR /&gt;final CheckOutCheckInService cociService = serviceRegistry.getCheckOutCheckInService();&lt;BR /&gt;&lt;BR /&gt;try&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;checkedOutCopy = AuthenticationUtil.runAs(new AuthenticationUtil.RunAsWork&amp;lt;NodeRef&amp;gt;() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public NodeRef doWork() throws Exception {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return cociService.checkout(nodeRef);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}, String.valueOf(workingCopyOwner));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ContentWriter writer = fileFolderService.getWriter(checkedOutCopy);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;writer.putContent(workingCopyContentAndMetadata.getContentFile());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (log.isDebugEnabled()) log.debug("uploaded working copy content ");&lt;BR /&gt;}&lt;BR /&gt;finally&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (log.isDebugEnabled()) log.debug("set fully authenticated user back to '" + currentUser + "'");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setFullyAuthenticatedUser(currentUser);&lt;BR /&gt;}&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 19 Apr 2012 15:15:46 GMT</pubDate>
    <dc:creator>kbrady</dc:creator>
    <dc:date>2012-04-19T15:15:46Z</dc:date>
    <item>
      <title>How to check out a document to a different user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259802#M212932</link>
      <description>I'm trying to write some code that will be run by the 'admin' user that will check out a document to a different user e.g. 'John'. However, when I view the checked out document in Share it always says that the document is checked out to the user 'admin'.I'm running this code on Alfresco 4.0.cHere is</description>
      <pubDate>Wed, 18 Apr 2012 13:51:02 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259802#M212932</guid>
      <dc:creator>kbrady</dc:creator>
      <dc:date>2012-04-18T13:51:02Z</dc:date>
    </item>
    <item>
      <title>Re: How to check out a document to a different user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259803#M212933</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yes, there is problem in code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Whatever the piece of code you write in that block will be executed as the admin user only.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;And in that code you are checking out the document by default it is taking the current user as the checkout person.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;why you need to write that code under that block.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;try it without block you will be fine.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2012 10:52:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259803#M212933</guid>
      <dc:creator>mitpatoliya</dc:creator>
      <dc:date>2012-04-19T10:52:47Z</dc:date>
    </item>
    <item>
      <title>Re: How to check out a document to a different user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259804#M212934</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for your reply.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The code that I'm executing will always be run by the user 'admin' so if I try and check out a document it will be checked out to the user 'admin' instead of the actual user who owns the document e.g. 'John'. Also the document will be locked to the user 'admin' instead of 'John'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I was trying to use the AuthenticationUtil.RunAs method to be able to execute code as another user e.g. 'John'&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm trying to import documents into Alfresco and have some of the documents automatically checked out to some users. This code needs to iterate over a number of different documents and potentially check out documents to different users. Hence it needs to be able to impersonate a user to check out the document to them. The code itself can not be run by each of the individual users.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I wont have access to the users passwords so I cannot use the AuthenticationService.authenticate() method.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2012 11:36:36 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259804#M212934</guid>
      <dc:creator>kbrady</dc:creator>
      <dc:date>2012-04-19T11:36:36Z</dc:date>
    </item>
    <item>
      <title>Re: How to check out a document to a different user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259805#M212935</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;you can use AuthenticationService.runasUser("userid");&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2012 11:40:15 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259805#M212935</guid>
      <dc:creator>mitpatoliya</dc:creator>
      <dc:date>2012-04-19T11:40:15Z</dc:date>
    </item>
    <item>
      <title>Re: How to check out a document to a different user</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259806#M212936</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have got it working now.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Previously I had failed to call AuthenticationUtil.setFullyAuthenticatedUser(user)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is my working code&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;final String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&lt;BR /&gt;NodeRef checkedOutCopy = null;&lt;BR /&gt;AuthenticationUtil.setFullyAuthenticatedUser(String.valueOf(workingCopyOwner));&lt;BR /&gt;if (log.isDebugEnabled()) log.debug("set fully authenticated user to '" + String.valueOf(workingCopyOwner) + "'");&lt;BR /&gt;&lt;BR /&gt;final CheckOutCheckInService cociService = serviceRegistry.getCheckOutCheckInService();&lt;BR /&gt;&lt;BR /&gt;try&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;checkedOutCopy = AuthenticationUtil.runAs(new AuthenticationUtil.RunAsWork&amp;lt;NodeRef&amp;gt;() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public NodeRef doWork() throws Exception {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return cociService.checkout(nodeRef);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}, String.valueOf(workingCopyOwner));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ContentWriter writer = fileFolderService.getWriter(checkedOutCopy);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;writer.putContent(workingCopyContentAndMetadata.getContentFile());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (log.isDebugEnabled()) log.debug("uploaded working copy content ");&lt;BR /&gt;}&lt;BR /&gt;finally&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (log.isDebugEnabled()) log.debug("set fully authenticated user back to '" + currentUser + "'");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setFullyAuthenticatedUser(currentUser);&lt;BR /&gt;}&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2012 15:15:46 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-check-out-a-document-to-a-different-user/m-p/259806#M212936</guid>
      <dc:creator>kbrady</dc:creator>
      <dc:date>2012-04-19T15:15:46Z</dc:date>
    </item>
  </channel>
</rss>

