<?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: Proper way to implement a custom a taskListener in Activiti? in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260438#M213568</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I haven't tried it, to be honest.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The previous one, overriding the bean, works.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Adei&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Apr 2012 11:47:21 GMT</pubDate>
    <dc:creator>amandaluniz_z</dc:creator>
    <dc:date>2012-04-03T11:47:21Z</dc:date>
    <item>
      <title>Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260432#M213562</link>
      <description>I want to implement a custom taskListener that leverages the ActionService. I have written a Java class that implements TaskListener. The problem I'm having is how to properly inject the dependency and how to refer to the taskListener from the process definition.I tried creating the following in one</description>
      <pubDate>Wed, 08 Feb 2012 14:33:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260432#M213562</guid>
      <dc:creator>jpotts</dc:creator>
      <dc:date>2012-02-08T14:33:05Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260433#M213563</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to implement similar thing as you, but using Activiti ServiceTask, and had the same problems as you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;'activiti:class' way worked fine, and delegateExpression had not. I've also implemented my own class which registered in activitiBeanRegistry, without utilizing baseJavaDelegate bean.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only way I've found to evade this problem was to manually register my bean in activiti-context.xml by adding new entry to activitiBeanRegistry map:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt; &amp;lt;util:map id="activitiBeanRegistry" map-class="java.util.HashMap"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="services" value-ref="ServiceRegistry" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="simpleLoggerServiceTask" value-ref="simpleLoggerServiceTask" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/util:map&amp;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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Just like classes utilising activitiBeanRegistry couldn't reach runtime updates in this map..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The important thing is that both key and value-ref have to have the same value - id of the bean.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I see you have released workflow tutorial yesterday and just scrolled through it, but haven't found there utilising java classes in workflows the way we are talking here about.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you figured out how to do it, or have you given up for the moment? &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Or is this issue now officially bug?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Feb 2012 16:21:46 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260433#M213563</guid>
      <dc:creator>michalwrobel</dc:creator>
      <dc:date>2012-02-21T16:21:46Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260434#M213564</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;In the tutorial I use a taskListener that refers to the class by name:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&amp;lt;activiti:taskListener event="create" class="com.someco.bpm.ExternalReviewNotification"&amp;gt;&amp;lt;/activiti:taskListener&amp;gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;And then within the class I have a getServiceRegistry method that I stole from ActivitiScriptBase.java. It retrieves the service registry so I can have access to Alfresco's services:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;protected ServiceRegistry getServiceRegistry() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessEngineConfigurationImpl config = Context.getProcessEngineConfiguration();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (config != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Fetch the registry that is injected in the activiti spring-configuration&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceRegistry registry = (ServiceRegistry) config.getBeans().get(ActivitiConstants.SERVICE_REGISTRY_BEAN_KEY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (registry == null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Service-registry not present in ProcessEngineConfiguration beans, expected ServiceRegistry with key" + &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActivitiConstants.SERVICE_REGISTRY_BEAN_KEY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return registry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new IllegalStateException("No ProcessEngineCOnfiguration found in active context");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeff&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Feb 2012 14:36:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260434#M213564</guid>
      <dc:creator>jpotts</dc:creator>
      <dc:date>2012-02-22T14:36:51Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260435#M213565</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I faced the same problem and found the same work around (register the bean manually overriding the activitiBeanRegistry).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is not the best solution as if you have more than one module, and want to register beans within the AMP file not in shared/classes/alfresco/extension… There'll be a workflow that won't work.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've already raised a ticket with Alfresco Support, fingers crossed they fix that!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Adei&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Feb 2012 14:53:19 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260435#M213565</guid>
      <dc:creator>amandaluniz_z</dc:creator>
      <dc:date>2012-02-22T14:53:19Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260436#M213566</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Alfresco engineers have come back to me in this matter.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;According to them, it's not the spring bean id the one we need to put in the delegateExpression property but the base name of the java class (for Jeff's example if would be &lt;/SPAN&gt;&lt;STRONG&gt;ExternalReviewNotification&lt;/STRONG&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 02 Mar 2012 09:29:25 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260436#M213566</guid>
      <dc:creator>amandaluniz_z</dc:creator>
      <dc:date>2012-03-02T09:29:25Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260437#M213567</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;According to them, it's not the spring bean id the one we need to put in the delegateExpression property but the base name of the java class (for Jeff's example if would be ExternalReviewNotification)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;So has anyone else tried this solution? I've tried it and it still doesn't work.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Apr 2012 08:54:00 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260437#M213567</guid>
      <dc:creator>pero</dc:creator>
      <dc:date>2012-04-03T08:54:00Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260438#M213568</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I haven't tried it, to be honest.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The previous one, overriding the bean, works.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Adei&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Apr 2012 11:47:21 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260438#M213568</guid>
      <dc:creator>amandaluniz_z</dc:creator>
      <dc:date>2012-04-03T11:47:21Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260439#M213569</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I faced the same problem and found the same work around (register the bean manually overriding the activitiBeanRegistry).&lt;BR /&gt;&lt;BR /&gt;This is not the best solution as if you have more than one module, and want to register beans within the AMP file not in shared/classes/alfresco/extension… There'll be a workflow that won't work.&lt;BR /&gt;&lt;BR /&gt;I've already raised a ticket with Alfresco Support, fingers crossed they fix that!&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Adei&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Could you post a link to that Jira ticket so we can vote on it?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 08 Apr 2012 23:12:30 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260439#M213569</guid>
      <dc:creator>pero</dc:creator>
      <dc:date>2012-04-08T23:12:30Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260440#M213570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Sorry, didn't create a JIRA ticket, I meant an Alfresco Support ticket&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Apr 2012 12:34:16 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260440#M213570</guid>
      <dc:creator>amandaluniz_z</dc:creator>
      <dc:date>2012-04-10T12:34:16Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260441#M213571</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Sorry, didn't create a JIRA ticket, I meant an Alfresco Support ticket&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Ah. Ok then. You let us know when they fix it &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://connect.hyland.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Apr 2012 13:42:11 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260441#M213571</guid>
      <dc:creator>pero</dc:creator>
      <dc:date>2012-04-10T13:42:11Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260442#M213572</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi all,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i have found this topic very interesting, i&amp;nbsp; think that you can help me especially when i read this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I tried to implement similar thing as you, but using Activiti ServiceTask, and had the same problems as you.&lt;BR /&gt;&lt;BR /&gt;'activiti:class' way worked fine….&lt;/BLOCKQUOTE&gt;&lt;SPAN&gt;because i can't run any Activiti ServiceTask using activiti:class attribute. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Let me explain, my process definition is very simple:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;process id="MySampleServiceTask" name="MySampleServiceTask"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;startEvent id="alfrescoStartevent1" name="Alfresco start" activiti:formKey="bpm:startTask"&amp;gt;&amp;lt;/startEvent&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;serviceTask id="servicetask1" name="Service Task" activiti:class="workflow.sample.serviceTask.HelloWorldServiceTask"&amp;gt;&amp;lt;/serviceTask&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;endEvent id="endevent1" name="End"&amp;gt;&amp;lt;/endEvent&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sequenceFlow id="flow1" name="" sourceRef="servicetask1" targetRef="endevent1"&amp;gt;&amp;lt;/sequenceFlow&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sequenceFlow id="flow2" name="" sourceRef="alfrescoStartevent1" targetRef="servicetask1"&amp;gt;&amp;lt;/sequenceFlow&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/process&amp;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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;and the HelloWorldServiceTask is even simpler:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;package workflow.sample.serviceTask;&lt;BR /&gt;&lt;BR /&gt;import org.activiti.engine.delegate.DelegateExecution;&lt;BR /&gt;import org.activiti.engine.delegate.JavaDelegate;&lt;BR /&gt;&lt;BR /&gt;public class HelloWorldServiceTask implements JavaDelegate {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public HelloWorldServiceTask() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("HelloWorldServiceTask created");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void execute(DelegateExecution arg0) throws Exception {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("Hello Wolrd!");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&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;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;I have put my HelloWorldServiceTask class in a jar in the folder $TOMCAT_HOME/shared/lib/&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Started Alfresco and deployed process definition using Activiti Workflow Console&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But when i try to start the workflow from&amp;nbsp; Alfresco Share web application it doesn't work: the workflow doesn't start and a pupup is opened with the message 'Impossible to start workflow'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have try&amp;nbsp; to set the logging level to debug (log4j.logger.org.alfresco.repo.workflow=debug) to have more information but nothing is logged.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do you have any idea what i'm doing wrong? I missing some configuration?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;How can i have a more detailed error message?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Francesco&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2012 10:51:45 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260442#M213572</guid>
      <dc:creator>checco</dc:creator>
      <dc:date>2012-06-11T10:51:45Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260443#M213573</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have partially resolved my problem. I have Used Alfresco workflow console (&lt;/SPAN&gt;&lt;A href="http://localhost:8080/alfresco/faces/jsp/admin/workflow-console.jsp" rel="nofollow noopener noreferrer"&gt;http://localhost:8080/alfresco/faces/jsp/admin/workflow-console.jsp&lt;/A&gt;&lt;SPAN&gt;) to start my process and a ClassNotfoundException was raised so i have moved my jar with my classes in $TOMCAT_HOME/webapps/alfresco/WEB-INF/lib.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now when i try to start a new instance of the process the HelloWorldServiceTask is created and his execution(…) method is invoked because i can see the output in the console, but after that an exception is raise and the Alfresco Workflow Console shows the message: org.alfresco.service.cmr.workflow.WorkflowException: 05110007 Workflow path activiti$3205 does not exist.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It seems that the problem is between the serviceTask and the endEvent transition… &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The message is not logged in alfresco.log file, is there another configuration in addition to log4j.logger.org.alfresco.repo.workflow=debug in order to log also that message?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Francesco&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Jun 2012 14:54:32 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260443#M213573</guid>
      <dc:creator>checco</dc:creator>
      <dc:date>2012-06-11T14:54:32Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260444#M213574</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Francesco,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Try adding this line in log4j.properties&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;log4j.logger.workflow.sample.serviceTask.HelloWorldServiceTask=debug&lt;/STRONG&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Jun 2012 07:28:58 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260444#M213574</guid>
      <dc:creator>kavilash23</dc:creator>
      <dc:date>2012-06-12T07:28:58Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260445#M213575</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have just resolved the problem by adding only a userTask after the serviceTask and everything works fine!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now i facing the problem of the delegate expression: i have tried either the bean id and the base name of the executor class but it dosen't works.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I finally adopted the jeff's solution, using the activiti:class attribute and the getServiceRegistry method.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Jun 2012 09:45:15 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260445#M213575</guid>
      <dc:creator>checco</dc:creator>
      <dc:date>2012-06-12T09:45:15Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260446#M213576</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;We ran into the issue of trying to call 'delegate' from an Activiti workflow in Alfresco 4.0.1 (haven't tried this in 4.0.2 yet).&amp;nbsp; I looked at the 'invitation-nominated' workflow as an example, as it makes use of delegates. However, our delegate was not accessible from the workflow. We worked through a couple of issues and got it to work, and hopefully this is helpful to folks:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1) Your bean must be registered in the activitiBeanRegistry.&amp;nbsp; This is a Map that uses the class name (as a String) as the key, with the class object as the value in the Map. The important thing here is that your bean id name should exactly match your class name (e.g. - case sensitive) so that it matches in the Map.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2) If your class extends the BaseJavaDelegate class, your class should get added to the activitiBeanRegistry. However, this was not working for us. I attached a debugger, and I never saw my class getting added to the map.&amp;nbsp; We resolved this by making our custom class' bean dependent on the activitiBeanRegistry. So, it looks like there is an order of initialization issue here if you don't do this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;We have&amp;nbsp; bunch of classes that we're calling, so we just used an abstract bean that was dependent on the 'activitiBeanRegistry', and then our classes had the abstract bean as a parent (your Java class still extends BaseJavaDelegate, though).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is a snippet of the Spring config:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&amp;lt;bean id="AbstractWorkflowDelegate" parent="baseJavaDelegate" abstract="true" depends-on="activitiBeanRegistry"/&amp;gt;&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; &amp;lt;bean id="MyCustomClass" parent="AbstractWorkflowDelegate" class="com.bluefishgroup.alf.workflow.MyCustomClass"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!– A bunch of additional classes defined as well –&amp;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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;And then, in the source code, my class needs to still extend BaseJavaDelegate:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;import org.alfresco.repo.workflow.activiti.BaseJavaDelegate;&lt;BR /&gt;&lt;BR /&gt;public class MyCustomClass extends BaseJavaDelegate&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;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Jun 2012 19:19:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260446#M213576</guid>
      <dc:creator>wgcox</dc:creator>
      <dc:date>2012-06-28T19:19:51Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260447#M213577</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for posting that, but it hasn't solved my problem. All the combinations I've found in the forums and tried has not gotten me a reference to the ServiceRegistry. I am implementing an ExecutionListener, and my object does get called from the workflow, so I know that part is correct. But when my object's 'notify' method is called, it never gets a non-null return from BaseJavaDelegate.getServiceRegistry().&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What is the magic Spring incantation I'm missing here? &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;?xml version='1.0' encoding='UTF-8'?&amp;gt;&lt;BR /&gt;&amp;lt;!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' '&lt;A href="http://www.springframework.org/dtd/spring-beans.dtd" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/dtd/spring-beans.dtd&lt;/A&gt;'&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;lt;beans&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="AbstractWorkflowDelegate" parent="baseJavaDelegate" abstract="true" depends-on="activitiBeanRegistry" /&amp;gt;&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="MyIssuePost" class="com.epnet.alfresco.metadata.listener.MyIssuePost" parent="AbstractWorkflowDelegate"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property name="serviceRegistry" ref="ServiceRegistry" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;lt;!–&amp;nbsp; this didn't work either &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="com.epnet.metadata.listener.MyIssuePost" class="com.epnet.alfresco.metadata.listener.MyIssuePost"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property name="serviceRegistry" ref="ServiceRegistry" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/bean&amp;gt;&lt;BR /&gt; –&amp;gt;&lt;BR /&gt;&amp;lt;/beans&amp;gt;&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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Mar 2013 20:54:21 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260447#M213577</guid>
      <dc:creator>ungawunga</dc:creator>
      <dc:date>2013-03-19T20:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260448#M213578</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am facing same problem as UngaWUnga do&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My code is…&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;public abstract class DmsCommonListener {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;final static protected String DMS_LOG_MARKER = "### DMS ###";&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Autowired&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Qualifier("ServiceRegistry")&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;private 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; * @param serviceRegistry&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the serviceRegistry to set&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Required&amp;nbsp; //I combined it to just somehow make it work:-)&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;this.serviceRegistry = serviceRegistry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;/**&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @return the serviceRegistry&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 serviceRegistry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;&amp;lt;beans xmlns="&lt;A href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/beans&lt;/A&gt;" xmlns:xsi="&lt;A href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow noopener noreferrer"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/A&gt;" xmlns:context="&lt;A href="http://www.springframework.org/schema/context" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/context&lt;/A&gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;xsi:schemaLocation="&lt;A href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/beans&lt;/A&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;A href="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/beans/spring-beans-3.0.xsd&lt;/A&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;A href="http://www.springframework.org/schema/context" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/context&lt;/A&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;A href="http://www.springframework.org/schema/context/spring-context-3.0.xsd" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/context/spring-context-3.0.xsd&lt;/A&gt;"&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;context:annotation-config /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;context:component-scan base-package="com.tieto" /&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="DmsCustomMailer" class="com.tieto.workflow.util.DmsCustomMailer"&amp;gt;&amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="DmsCommonListenerBean" class="com.tieto.workflow.DmsCommonListener" abstract="true"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;property name="workflowService"&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="WorkflowService" /&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;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;&lt;BR /&gt;&amp;nbsp;&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;lt;/bean&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;lt;bean id="DmsCommonTaskListenerBean" class="com.tieto.workflow.DmsCommonTaskListener" abstract="true" parent="DmsCommonListenerBean" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="DmsCommonExecutionListenerBean" class="com.tieto.workflow.DmsCommonExecutionListener" abstract="true" parent="DmsCommonListenerBean" /&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!– INIT –&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="InitTaskListenerBean" class="com.tieto.workflow.init.TaskListener" parent="DmsCommonTaskListenerBean" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="InitExecutionListenerBean" class="com.tieto.workflow.init.ExecutionListener" parent="DmsCommonExecutionListenerBean" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!– ELABORATION –&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bean id="ElaborationTaskListenerBean" class="com.tieto.workflow.elaboration.TaskListener" parent="DmsCommonTaskListenerBean" /&amp;gt;&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;/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;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 Oct 2013 07:38:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260448#M213578</guid>
      <dc:creator>scundall</dc:creator>
      <dc:date>2013-10-21T07:38:51Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260449#M213579</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;By registering the bean with activeRegistry, I was able to invoke it using the "delegateExpression" attribute as shown above.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But if I try to auto-wire a custom service class inside ExternalReviewNotification, then that class is not getting instantiated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;blockcode&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;util:map id="activitiBeanRegistry" map-class="java.util.HashMap"&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="services" value-ref="ServiceRegistry" /&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="externalReviewNotification" value-ref="externalReviewNotification" /&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/util:map&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;bean id="externalReviewNotification" class="com.someco.bpm.ExternalReviewNotification" &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;depends-on="activitiBeanRegistry"&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;property name="myActionService"&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ref bean="myActionService" /&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/bean&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;bean id="myActionService" class="com.someco.bpm.service.MyActionService"/&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/blockcode&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Please advise.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2013 07:08:34 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260449#M213579</guid>
      <dc:creator>cafebabe</dc:creator>
      <dc:date>2013-12-17T07:08:34Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260450#M213580</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Sorry Jeff, but I´m afraid I didn´t understand the solution you suggested due to I´m a beginner in activity. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Please, may you tell me what I'm doing wrong in this code or else what´s the best way to get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;the service registry having Alfresco 4.2.x?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This is my wf:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;BR /&gt;&amp;lt;definitions xmlns="&lt;A href="http://www.omg.org/spec/BPMN/20100524/MODEL" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/BPMN/20100524/MODEL&lt;/A&gt;" xmlns:xsi="&lt;A href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow noopener noreferrer"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/A&gt;" xmlns:activiti="&lt;A href="http://activiti.org/bpmn" rel="nofollow noopener noreferrer"&gt;http://activiti.org/bpmn&lt;/A&gt;" xmlns:bpmndi="&lt;A href="http://www.omg.org/spec/BPMN/20100524/DI" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/BPMN/20100524/DI&lt;/A&gt;" xmlns:omgdc="&lt;A href="http://www.omg.org/spec/DD/20100524/DC" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/DD/20100524/DC&lt;/A&gt;" xmlns:omgdi="&lt;A href="http://www.omg.org/spec/DD/20100524/DI" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/DD/20100524/DI&lt;/A&gt;" typeLanguage="&lt;A href="http://www.w3.org/2001/XMLSchema" rel="nofollow noopener noreferrer"&gt;http://www.w3.org/2001/XMLSchema&lt;/A&gt;" expressionLanguage="&lt;A href="http://www.w3.org/1999/XPath" rel="nofollow noopener noreferrer"&gt;http://www.w3.org/1999/XPath&lt;/A&gt;" targetNamespace="Examples"&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;process id="MyTest" name="MyTest"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;startEvent id="theStart" name="Start"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/startEvent&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;serviceTask id="javaService" name="Java service invocation" activiti:class="org.activiti.examples.bpmn.test.manager2.SetterTest"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;extensionElements&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:field name="text"&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;activiti:string&amp;gt;Success&amp;lt;/activiti:string&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/activiti:field&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:taskListener event="create" class="org.activiti.examples.bpmn.test.manager2.SetterTest"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/activiti:taskListener&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/extensionElements&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/serviceTask&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;userTask id="usertask1" name="User Task" activiti:candidateGroups="user"&amp;gt;&amp;lt;/userTask&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;endEvent id="theEnd" name="End"&amp;gt;&amp;lt;/endEvent&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sequenceFlow id="flow1" name="" sourceRef="theStart" targetRef="javaService"&amp;gt;&amp;lt;/sequenceFlow&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sequenceFlow id="flow2" name="" sourceRef="javaService" targetRef="usertask1"&amp;gt;&amp;lt;/sequenceFlow&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sequenceFlow id="flow4" name="" sourceRef="usertask1" targetRef="theEnd"&amp;gt;&amp;lt;/sequenceFlow&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/process&amp;gt;&lt;BR /&gt;&amp;lt;/definitions&amp;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;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;..and this is my class that unaffortunately doesn´t get the serviceRegistry..&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;package org.activiti.examples.bpmn.test.manager2;&lt;BR /&gt;import …&lt;BR /&gt;……….&lt;BR /&gt;public class SetterTest implements JavaDelegate {&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;private static final String VARIABLE_NAME = "testVariable";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;private Expression text;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ServiceRegistry serviceRegistry=null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;//public ServiceRegistry getServiceRegistry() {return serviceRegistry;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;protected ServiceRegistry getServiceRegistry() {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessEngineConfigurationImpl config = Context.getProcessEngineConfiguration();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (config != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceRegistry registry = (ServiceRegistry) config.getBeans().get(ActivitiConstants.SERVICE_REGISTRY_BEAN_KEY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (registry == null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Service-registry not present in ProcessEngineConfiguration beans, expected ServiceRegistry with key" + &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActivitiConstants.SERVICE_REGISTRY_BEAN_KEY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("————— config =null");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return registry;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new IllegalStateException("No ProcessEngineCOnfiguration found in active context");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void setServiceRegistry(ServiceRegistry serviceRegistry) {this.serviceRegistry = serviceRegistry;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public void execute(DelegateExecution execution) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (serviceRegistry==null)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println("serviceRegistry is null!!");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&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;/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;BR /&gt;&lt;SPAN&gt;Thank you so much!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Mar 2014 14:26:00 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260450#M213580</guid>
      <dc:creator>dmralfing</dc:creator>
      <dc:date>2014-03-20T14:26:00Z</dc:date>
    </item>
    <item>
      <title>Re: Proper way to implement a custom a taskListener in Activiti?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260451#M213581</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I described an example of doing above here: &lt;/SPAN&gt;&lt;A href="http://experiencewithalfresco.blogspot.dk/2014/08/using-bean-instanciated-tasklistener-in.html" rel="nofollow noopener noreferrer"&gt;http://experiencewithalfresco.blogspot.dk/2014/08/using-bean-instanciated-tasklistener-in.html&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Aug 2014 08:47:34 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/proper-way-to-implement-a-custom-a-tasklistener-in-activiti/m-p/260451#M213581</guid>
      <dc:creator>rasm</dc:creator>
      <dc:date>2014-08-12T08:47:34Z</dc:date>
    </item>
  </channel>
</rss>

