<?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 Inject/Load bean spring from activiti context in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148797#M103851</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;BR /&gt;&lt;SPAN&gt;Is there any way to inject and load spring beans from activiti context ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is my case:&amp;nbsp; I have my own custom class implementing Tasklistener containing a property which is (should be) injected using setter by spring.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt; &lt;BR /&gt;public final class AddDateMetierUserTaskListener implements TaskListener {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static final String DATE_METIER_VAR = "dateMetier";&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private CalculDateMetierService calculDateMetierService;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void notify(DelegateTask delegateTask) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Assert.argumentNotNull("delegateTask", delegateTask);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UserTask userTask = new DelegateTaskAdapter(delegateTask, delegateTask.getVariables());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LocalDate dateMetier = calculDateMetierService.dispatchCalculDateMetier(userTask);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (dateMetier != 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; delegateTask.createVariableLocal(DATE_METIER_VAR,&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; dateMetier.toString(DateTimeFormat.forPattern("dd/MM/yyyy")));&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; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setCalculDateMetierService(CalculDateMetierService calculDateMetierService) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.calculDateMetierService = calculDateMetierService;&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;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/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;But what I noticed is that property calculDateMetierService is always null. What I understood from that is we have 2 separate contexts: one Spring and other Activiti. And i d'ont know how to communicate between these 2 contexts. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In Spring context, when tomcat is starting these injections are done properly. But when the notify method is launched from the listener the injected service is not injected and is null.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many developpers had this problem but no one had a good solution to solve this issue. Can anyone give me some tips ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks a lot for your help&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Karnan&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 20 Jun 2013 12:51:45 GMT</pubDate>
    <dc:creator>kse</dc:creator>
    <dc:date>2013-06-20T12:51:45Z</dc:date>
    <item>
      <title>Inject/Load bean spring from activiti context</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148797#M103851</link>
      <description>Hi all,Is there any way to inject and load spring beans from activiti context ?Here is my case:&amp;nbsp; I have my own custom class implementing Tasklistener containing a property which is (should be) injected using setter by spring. public final class AddDateMetierUserTaskListener implements TaskListener {</description>
      <pubDate>Thu, 20 Jun 2013 12:51:45 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148797#M103851</guid>
      <dc:creator>kse</dc:creator>
      <dc:date>2013-06-20T12:51:45Z</dc:date>
    </item>
    <item>
      <title>Re: Inject/Load bean spring from activiti context</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148798#M103852</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;We use Activiti version 5.8&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 12:59:18 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148798#M103852</guid>
      <dc:creator>kse</dc:creator>
      <dc:date>2013-06-20T12:59:18Z</dc:date>
    </item>
    <item>
      <title>Re: Inject/Load bean spring from activiti context</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148799#M103853</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I also tried to use this expression to provide the service bean as parameter of the tasklistener:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;activiti:taskListener event="assignment" class="x.x.x.y.AddDateMetierUserTaskListener"&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:field name="calculDateMetierService"&amp;gt;&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;lt;activiti:expression&amp;gt;${calculDateMetierService}&amp;lt;/activiti:expression&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:field&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;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;But I had an error during the server starting: The tasklistener expect a field type of Expression but I would like to have a injected bean type of CalculDateMetierService&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 13:04:52 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148799#M103853</guid>
      <dc:creator>kse</dc:creator>
      <dc:date>2013-06-20T13:04:52Z</dc:date>
    </item>
    <item>
      <title>Re: Inject/Load bean spring from activiti context</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148800#M103854</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;We finally found the solution. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In the previous version, the tasklistener was used on event assignment and type Java class.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Now we changed the type to Delegate expression and it works. The injection is done.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Jun 2013 07:21:35 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148800#M103854</guid>
      <dc:creator>kse</dc:creator>
      <dc:date>2013-06-21T07:21:35Z</dc:date>
    </item>
    <item>
      <title>Re: Inject/Load bean spring from activiti context</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148801#M103855</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;thanks for posting back. But do you think an exception should be thrown here … somehow?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Jun 2013 08:51:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/inject-load-bean-spring-from-activiti-context/m-p/148801#M103855</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2013-06-24T08:51:50Z</dc:date>
    </item>
  </channel>
</rss>

