<?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 How to get Alfresco services in workflow service task in Alfresco Forum</title>
    <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5139#M2482</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am new on Alfresco community version 5.2&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need use Alfresco services (NodeService, ContentService, ServiceRegistry) inside class used for workflow service task.&lt;/P&gt;&lt;P&gt;I created class but I cannot use Alfresco Services. All methods returns null. What I do wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;My class and reference are here:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;public class myClass implements JavaDelegate {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private NodeService nodeService;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private ServiceRegistry serviceRegistry;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private ContentService contentService;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private ApplicationContext applicationContext;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; public void execute(DelegateExecution execution) throws Exception {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("getContentService() " + getContentService());&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;System.out.println("getServiceRegistry() " + getServiceRegistry());&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public ContentReader getContentReader(NodeRef docref) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ContentReader reader = contentService.getReader(docref, ContentModel.PROP_CONTENT);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return reader;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setContentService(ContentService contentService)&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.contentService = contentService;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public ContentService getContentService() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return this.contentService;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setNodeService(NodeService nodeService) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.nodeService = nodeService;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setServiceRegistry(ServiceRegistry serviceRegistry) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //this.serviceRegistry=(ServiceRegistry)applicationContext.getBean("serviceRegistry");&amp;nbsp;&amp;nbsp; //this line cause error on deploy&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.serviceRegistry = serviceRegistry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public ServiceRegistry getServiceRegistry() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return this.serviceRegistry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I created file my-class-context.xml on path /myProject/src/main/amp/config/alfresco/extension&lt;/P&gt;&lt;P&gt;I have tried tu put referencies to service-context.xml too.&lt;/P&gt;&lt;P&gt;&amp;lt;?xml version='1.0' encoding='UTF-8'?&amp;gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.springframework.org/dtd/spring-beans.dtd" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/dtd/spring-beans.dtd&lt;/A&gt;&lt;SPAN&gt;'&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&amp;lt;beans&amp;gt;&lt;BR /&gt;&amp;lt;bean id="myClass" class="com.demo.myProject.task.myClass"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="contentService"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ref bean="ContentService" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="nodeService"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ref bean="NodeService" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;property name="serviceRegistry"&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;ref bean="ServiceRegistry"&amp;gt;&amp;lt;/ref&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/property&amp;gt; &lt;BR /&gt;&amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;lt;/beans&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 06 Feb 2017 14:23:41 GMT</pubDate>
    <dc:creator>pnature</dc:creator>
    <dc:date>2017-02-06T14:23:41Z</dc:date>
    <item>
      <title>How to get Alfresco services in workflow service task</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5139#M2482</link>
      <description>Hi,I am new on Alfresco community version 5.2&amp;nbsp;I need use Alfresco services (NodeService, ContentService, ServiceRegistry) inside class used for workflow service task.I created class but I cannot use Alfresco Services. All methods returns null. What I do wrong?Thanks in advance.My class and reference</description>
      <pubDate>Mon, 06 Feb 2017 14:23:41 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5139#M2482</guid>
      <dc:creator>pnature</dc:creator>
      <dc:date>2017-02-06T14:23:41Z</dc:date>
    </item>
    <item>
      <title>Re: How to get Alfresco services in workflow service task</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5140#M2483</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are two ways of dealing with Alfresco services in this case.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Configure a bean instance of your delegate in the Spring context files, register it with the Activiti bean registry and use a delegate expression on your task to call the specific bean instead of constructing a new instance.&lt;/LI&gt;&lt;LI&gt;Use the Activiti bean registry to get a reference to the Alfresco ServiceRegistry and from that obtain all the necessary services.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;The limitation on option #2 is that you can only get public services of Alfresco - any components / services not covered by the ServiceRegistry interface are not accessible (if you don't count a dirty trick of using the ServiceRegistry to lookup any bean).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As an example you can get the NodeService this way with option #2:&lt;/P&gt;&lt;PRE class="language-java line-numbers"&gt;&lt;CODE&gt;Map&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;Object&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; Object&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; registeredBeans &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; Context&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getProcessEngineConfiguration&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getBeans&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;ServiceRegistry registry &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ServiceRegistry&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;registeredBeans&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;get&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ActivitiConstants&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;SERVICE_REGISTRY_BEAN_KEY&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;NodeService nodeService &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; registry&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getNodeService&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&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;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 06 Feb 2017 18:01:14 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5140#M2483</guid>
      <dc:creator>afaust</dc:creator>
      <dc:date>2017-02-06T18:01:14Z</dc:date>
    </item>
    <item>
      <title>Re: How to get Alfresco services in workflow service task</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5141#M2484</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for reply.&lt;/P&gt;&lt;P&gt;I am really new in Alfresco and I cannot find information about using Activiti bean registry. What is it? Where is it? Is it configuration file on Alfresco or in project?&lt;/P&gt;&lt;P&gt;I have tried 2. way and I have got contentService but&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace;"&gt;ContentReader reader = contentService.getReader(docref, ContentModel.PROP_CONTENT);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace;"&gt;&lt;SPAN style="font-family: arial,helvetica,sans-serif;"&gt;failed&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace;"&gt;No authentication provider for net.sf.acegisecurity.providers.UsernamePasswordAuthenticationToken&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2017 08:56:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5141#M2484</guid>
      <dc:creator>pnature</dc:creator>
      <dc:date>2017-02-07T08:56:05Z</dc:date>
    </item>
    <item>
      <title>Re: How to get Alfresco services in workflow service task</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5142#M2485</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Could you please elaborate more on the first option?&lt;/P&gt;&lt;P&gt;In &lt;EM&gt;service-context.xml&lt;/EM&gt; we can add new bean:&lt;/P&gt;&lt;PRE class="line-numbers language-markup"&gt;&lt;CODE&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;bean&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;id&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;com.example.CreateXML&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;class&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;com.example.platformsample.CreateXML&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;parent&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;baseJavaDelegate&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;property&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;name&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;nodeService&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;ref&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;NodeService&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;bean&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But how we can "&lt;STRONG&gt;register it with the Activiti bean registry&lt;/STRONG&gt;" ? Should we somehow override &lt;CODE&gt;activitiProcessEngineConfiguration&lt;/CODE&gt; bean?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the &lt;EM&gt;myprocess.bpmn20.xml&lt;/EM&gt; file we can add:&lt;/P&gt;&lt;PRE class="line-numbers language-markup"&gt;&lt;CODE&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;serviceTask&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;id&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;approvedInvoiceScript&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;name&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;Test&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;&lt;SPAN class="namespace token"&gt;activiti:&lt;/SPAN&gt;class&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;com.example.platformsample.CreateXML&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;extensionElements&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;    &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="namespace token"&gt;activiti:&lt;/SPAN&gt;field&lt;/SPAN&gt; &lt;SPAN class="attr-name token"&gt;name&lt;/SPAN&gt;&lt;SPAN class="attr-value token"&gt;&lt;SPAN class="punctuation token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;nodeService&lt;SPAN class="punctuation token"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;      &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="namespace token"&gt;activiti:&lt;/SPAN&gt;expression&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;${NodeService}&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class="namespace token"&gt;activiti:&lt;/SPAN&gt;expression&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;    &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class="namespace token"&gt;activiti:&lt;/SPAN&gt;field&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;extensionElements&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="punctuation token"&gt;&amp;lt;/&lt;/SPAN&gt;serviceTask&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An in the &lt;EM&gt;CreateXML.java&lt;/EM&gt; we add:&lt;/P&gt;&lt;PRE class="language-java line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;private&lt;/SPAN&gt; NodeService nodeService&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class="keyword token"&gt;public&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;setNodeService&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;NodeService nodeService&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;  &lt;SPAN class="keyword token"&gt;this&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;nodeService &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; nodeService&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Am I right?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Aug 2019 14:45:03 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5142#M2485</guid>
      <dc:creator>upforsin</dc:creator>
      <dc:date>2019-08-15T14:45:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to get Alfresco services in workflow service task</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5143#M2486</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In your example, the CreateXML instance will be registered as a bean in the Activiti bean registry simply through the fact that it inherits from the "baseJavaDelegate". You should rename the ID of the bean to something without using dots, as the ID of the bean is what you would use to resolve it, e.g. now it would be ${com.example.CreateXML} in Activiti expressions, which is way confusing and actually problematic as a bean shell expression, since dots have a special meaning as separators for property accessors.&lt;/P&gt;&lt;P&gt;The NodeService would not be available as a bean in your case since only the enclosing instance of CreateXML will be registered as a bean with Activiti. You could of course write some code in CreateXML that&amp;nbsp;overrides the&amp;nbsp;setBeanRegistry method from the BaseJavaDelegate parent class to put whatever you like in the parameter map (the bean registry).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Aug 2019 11:29:25 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-get-alfresco-services-in-workflow-service-task/m-p/5143#M2486</guid>
      <dc:creator>afaust</dc:creator>
      <dc:date>2019-08-21T11:29:25Z</dc:date>
    </item>
  </channel>
</rss>

