<?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: JobAcquisitionThread and JobExecutor in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109042#M76507</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Just as an FYI, we have this ready in camunda fox with commercial support for webshere.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 24 Feb 2012 17:21:13 GMT</pubDate>
    <dc:creator>meyerd</dc:creator>
    <dc:date>2012-02-24T17:21:13Z</dc:date>
    <item>
      <title>JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109039#M76504</link>
      <description>Hi Guys,We are trying to replace the default job executor for a custom one that will use spring and the application server thread pool (commonj Work Manager). So we don't use any unmanaged threads.Reviewing the code we notice that is using another unmanaged thread the one polling for available jobs</description>
      <pubDate>Thu, 23 Feb 2012 13:00:23 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109039#M76504</guid>
      <dc:creator>pganga</dc:creator>
      <dc:date>2012-02-23T13:00:23Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109040#M76505</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I've implemented this for both, the JobAquisitionThread and the actual job executor for commonj, because WebSphere Application Server does not like it at all, if threads are created without its knowledge. Actually I've rewritten the JobAquisitionThread to use the commonj TimerManager and the Job Executor to use the commonj WorkManager, both configurable via JNDI.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm currently trying to find a generalizable way to support different JobExecutor threading models, because other Appservers have different approches for this. There has been some work done already by Ronald van Kuijk (see ACT-34), but I'm unsure how fast this will be integrated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My solution simply overrides the current JobExecutor (simple extend) in a programmatically done configuration of the Activiti Engine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If interested I can explain in more detail how I've implemented this. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Maybe Ronald van Kuijk can shed some light on his previous work for ACT-34 and explain if the modifications done so far will somehow be included in Activity soon.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Heiko&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 Feb 2012 17:02:52 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109040#M76505</guid>
      <dc:creator>bardioc</dc:creator>
      <dc:date>2012-02-23T17:02:52Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109041#M76506</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hey Bardioc&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I really appreciate your answer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I was actually doing exactly that, extending the job executor and inside this one injecting a TaskExecutor.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This Task executor is configured trough spring and in development is just a simple ThreadPoolTaskExecutor but in&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;WAS is a WorkManagerTaskExecutor that will use the Threadpoll JNDI name to access it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;If interested I can explain in more detail how I've implemented this.&lt;/BLOCKQUOTE&gt;&lt;SPAN&gt;Please I am really interested in seeing your approach.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Feb 2012 14:21:24 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109041#M76506</guid>
      <dc:creator>pganga</dc:creator>
      <dc:date>2012-02-24T14:21:24Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109042#M76507</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Just as an FYI, we have this ready in camunda fox with commercial support for webshere.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Feb 2012 17:21:13 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109042#M76507</guid>
      <dc:creator>meyerd</dc:creator>
      <dc:date>2012-02-24T17:21:13Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109043#M76508</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Just as an FYI, we have this ready in camunda fox with commercial support for webshere.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Sounds great, allthough I think something like this, except the commercial support, should be part of Activiti itself. Right now it is not really compatible with application server in general. From my perspective the core embeddable engine is not really embeddable because of the lacking support for managed threads. These are necessary in almost all application servers and something we should include in Activiti. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Just my two cents &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Heiko&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;PS: The company I'm working for might consider Camunda Fox, because of the commercial support. I'll check into that and get in touch with you guys.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 25 Feb 2012 17:41:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109043#M76508</guid>
      <dc:creator>bardioc</dc:creator>
      <dc:date>2012-02-25T17:41:47Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109044#M76509</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hey Bardioc&lt;BR /&gt;I really appreciate your answer.&lt;BR /&gt;I was actually doing exactly that, extending the job executor and inside this one injecting a TaskExecutor.&lt;BR /&gt;This Task executor is configured trough spring and in development is just a simple ThreadPoolTaskExecutor but in&lt;BR /&gt;WAS is a WorkManagerTaskExecutor that will use the Threadpoll JNDI name to access it.&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;If interested I can explain in more detail how I've implemented this.&lt;/BLOCKQUOTE&gt;Please I am really interested in seeing your approach.&lt;BR /&gt;&lt;BR /&gt;Thanks again.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;I'll try to get those files and make them available as attachment to a note and PM you!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 25 Feb 2012 17:43:17 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109044#M76509</guid>
      <dc:creator>bardioc</dc:creator>
      <dc:date>2012-02-25T17:43:17Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109045#M76510</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello Heiko,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I could also use these files and would be happy if you could pm me, too.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sebastian&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 25 Feb 2012 21:17:24 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109045#M76510</guid>
      <dc:creator>sebastian_s</dc:creator>
      <dc:date>2012-02-25T21:17:24Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109046#M76511</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I'll try to get those files and make them available as attachment to a note and PM you!&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Great Thanks!, I'll be waiting.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Feb 2012 15:01:25 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109046#M76511</guid>
      <dc:creator>pganga</dc:creator>
      <dc:date>2012-02-27T15:01:25Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109047#M76512</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello again,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;attached you find a maven project [attachment=1]activiti-websphere.zip[/attachment] that contains the support for WebSphere Application Server. It implements a custom Activiti Configuration based on the Spring Configuration object. The use of Spring here is important, as WebSphere contains a specific Transaction Manager support by using so called Units-of-Work. Spring provides support for this. The attached xml configuration [attachment=0]activiti.cfg.xml.zip[/attachment] shows how to use it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Make sure you have included the dependency for activiti-spring as well, as it is mandatory for this. The only additional configuration parameter for WebSphere is the workManager JNDI-Name.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&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;" &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 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;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;A href="http://www.springframework.org/schema/beans/spring-beans.xsd" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/beans/spring-beans.xsd&lt;/A&gt;"&amp;gt;&lt;BR /&gt;&lt;BR /&gt; &amp;lt;bean id="transactionManager" class="org.springframework.transaction.jta.WebSphereUowTransactionManager" /&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.websphere.WebSphereEngineConfiguration"&amp;gt;&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;lt;property name="transactionManager"&amp;nbsp; ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="jobExecutorWorkManagerJndiName" value="java:comp/env/wm/default" /&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;lt;/beans&amp;gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;It donates the JNDI name of the WorkManager to be used. It is optional, and if not specified, the given default value is used.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For the maven project to compile successfully, you need to provide an IBM specific reference to the com.ibm.ws.prereq.commonj-twm.jar-File, which contains the API code for the WorkManagers. You find this file in your WebSphere application servers 'plugin' directory and need to install it into your local repository:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;mvn install:install-file -Dfile=com.ibm.ws.prereq.commonj-twm.jar -DgroupId=com.ibm.ws.prereq -DartifactId=commonj-twm -Dversion=1.1 -Dpackaging=jar&lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;The implementation uses an ExecutionService for WorkManagers. The idea came to me while I saw that the default JobExecutor uses the ThreadPoolExecutor.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Attention: This module will only work for Activiti 5.9 or above, as the modifications introduced by JIRA ACT-34 are necessary.&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The code is free of use. I would like to get a note if you find a mistake, error or something that could be done better.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Heiko&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Feb 2012 18:26:56 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109047#M76512</guid>
      <dc:creator>bardioc</dc:creator>
      <dc:date>2012-02-27T18:26:56Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109048#M76513</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hello again,&lt;BR /&gt;&lt;BR /&gt;attached you find a maven project [attachment=1]activiti-websphere.zip[/attachment] that contains the support for WebSphere Application Server. It implements a custom Activiti Configuration based on the Spring Configuration object. The use of Spring here is important, as WebSphere contains a specific Transaction Manager support by using so called Units-of-Work. Spring provides support for this. The attached xml configuration [attachment=0]activiti.cfg.xml.zip[/attachment] shows how to use it.&lt;BR /&gt;&lt;BR /&gt;Make sure you have included the dependency for activiti-spring as well, as it is mandatory for this. The only additional configuration parameter for WebSphere is the workManager JNDI-Name.&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&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;" &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 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;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;A href="http://www.springframework.org/schema/beans/spring-beans.xsd" rel="nofollow noopener noreferrer"&gt;http://www.springframework.org/schema/beans/spring-beans.xsd&lt;/A&gt;"&amp;gt;&lt;BR /&gt;&lt;BR /&gt; &amp;lt;bean id="transactionManager" class="org.springframework.transaction.jta.WebSphereUowTransactionManager" /&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.websphere.WebSphereEngineConfiguration"&amp;gt;&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;lt;property name="transactionManager"&amp;nbsp; ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="jobExecutorWorkManagerJndiName" value="java:comp/env/wm/default" /&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;lt;/beans&amp;gt;&lt;BR /&gt;&lt;/CODE&gt;It donates the JNDI name of the WorkManager to be used. It is optional, and if not specified, the given default value is used.&lt;BR /&gt;&lt;BR /&gt;For the maven project to compile successfully, you need to provide an IBM specific reference to the com.ibm.ws.prereq.commonj-twm.jar-File, which contains the API code for the WorkManagers. You find this file in your WebSphere application servers 'plugin' directory and need to install it into your local repository:&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;mvn install:install-file -Dfile=com.ibm.ws.prereq.commonj-twm.jar -DgroupId=com.ibm.ws.prereq -DartifactId=commonj-twm -Dversion=1.1 -Dpackaging=jar&lt;BR /&gt;&lt;/CODE&gt;The implementation uses an ExecutionService for WorkManagers. The idea came to me while I saw that the default JobExecutor uses the ThreadPoolExecutor.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Attention: This module will only work for Activiti 5.9 or above, as the modifications introduced by JIRA ACT-34 are necessary.&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;The code is free of use. I would like to get a note if you find a mistake, error or something that could be done better.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;&lt;BR /&gt;Heiko&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you very much.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'll review and try to get ideas for my own stuff, also I will provide the requested feedback as well.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Feb 2012 12:11:45 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109048#M76513</guid>
      <dc:creator>pganga</dc:creator>
      <dc:date>2012-02-28T12:11:45Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109049#M76514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello Heiko,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have tested your CommonJ interface code on Weblogic 10.3.4 and it works fine. I created an application level workmanager, plugged it in your JobExecutor via the jndi ref, then created a process with an async service task and all is executed fine. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The thing i cannot judge though from your code is if there are any websphere specific semantics in it with regards to the way you schedule jobs for execution. Do you have an idea about this ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[EDIT] it seems that there are some issues though, threads are getting stuck. Going to investigate and load test this.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Mar 2012 11:59:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109049#M76514</guid>
      <dc:creator>heymjo</dc:creator>
      <dc:date>2012-03-07T11:59:47Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109050#M76515</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hello Heiko,&lt;BR /&gt;&lt;BR /&gt;I have tested your CommonJ interface code on Weblogic 10.3.4 and it works fine. I created an application level workmanager, plugged it in your JobExecutor via the jndi ref, then created a process with an async service task and all is executed fine. &lt;BR /&gt;&lt;BR /&gt;The thing i cannot judge though from your code is if there are any websphere specific semantics in it with regards to the way you schedule jobs for execution. Do you have an idea about this ?&lt;BR /&gt;&lt;BR /&gt;thanks&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;actually not besides the usage of the UOWTransactionManager, which is Websphere specific, the code I wrote should work with all application servers that rely on WorkManagers. A caveat here is, that the WebSphereProcessConfiguration needs to extend the class SpringProcessConfiguration. That is necessary for the Transaction Manager to work correctly. However, if the API of Activiti would open the possibility to 'setJobExecutor()', which is currently not open API, one could simply remove the configuration object and provide a WorkManagerJobExecutor().&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Great to hear, that this works for WebLogic too, so I will add another section to my upcoming chapter for Application Server support for the Activiti Documentation.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Heiko&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Mar 2012 12:10:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109050#M76515</guid>
      <dc:creator>bardioc</dc:creator>
      <dc:date>2012-03-07T12:10:05Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109051#M76516</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am seeing this in the weblogic console (the CommonJ is just a rename from the original Websphere* classes)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;"[STUCK] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock java.lang.Object@1eac46a TIMED_WAITING&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;java.lang.Object.wait(Native Method)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;org.activiti.engine.impl.jobexecutor.AcquireJobsRunnable.run(AcquireJobsRunnable.java:101)&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; my.app.commonj.CommonJJobExecutor$JobAquisitionWork.run(CommonJJobExecutor.java:74)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;weblogic.work.ExecuteThread.run(ExecuteThread.java:176)&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;Looking around a bit this seems harmless though:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;In addition to reporting STUCK for requests that simply take a very long time, the stuck thread detector can mistakenly assume a thread is stuck if the thread is in a continuous loop doing real work – for example servicing many requests in succession without ever returning to the thread pool.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Since this is exactly what the AcquireJobsRunnable is doing we can assume it is a non-event. A modest load test also did not reveal any problems, i'll report back in case anything appears.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Mar 2012 14:50:27 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109051#M76516</guid>
      <dc:creator>heymjo</dc:creator>
      <dc:date>2012-03-07T14:50:27Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109052#M76517</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;Just a quick question still on this. IIUC the purpose of AcquireJobsRunnable, would this not be something that the commonj TimerManager could/should do ? The TimerManager schedules jobs (= classes implementing TimerListener) to run at a fixed interval in a 'managed' fashion.&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitialContext ic = new InitialContext();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimerManager tm = (TimerManager)ic.lookup("java:comp/env/tm/default");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Execute timer every 10 seconds starting immediately&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tm.schedule (new MyTimerListener(), 0, 10*1000);&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;cheers&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 08:38:06 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109052#M76517</guid>
      <dc:creator>heymjo</dc:creator>
      <dc:date>2012-03-08T08:38:06Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109053#M76518</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Bringing this up again:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Since ACT-34 has been resolved what's the matter with adding activiti-websphere as an additional module? Maybe it should be generalized and renamed depending on the experiences Jorg made using it on WebLogic.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I could not find a JIRA issue for this topic. Please point me to the existing JIRA issue if existent. Otherwise I will create a new JIRA issue for this subject.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Aug 2012 14:48:41 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109053#M76518</guid>
      <dc:creator>sebastian_s</dc:creator>
      <dc:date>2012-08-17T14:48:41Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109054#M76519</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;+1 for creating 'activiti-commonj' module&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Aug 2012 08:05:35 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109054#M76519</guid>
      <dc:creator>heymjo</dc:creator>
      <dc:date>2012-08-22T08:05:35Z</dc:date>
    </item>
    <item>
      <title>Re: JobAcquisitionThread and JobExecutor</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109055#M76520</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello all together&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;fyi: it is now possible not to extend EngineConfiguration anymore but instead inject a custom jobExecutor it using activiti.cfg.xml, I believe this is a result of ACT-34&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.cdi.CdiJtaProcessEngineConfiguration"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="transactionManager" ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="dataSourceJndiName" value="XXX" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="databaseSchemaUpdate" value="false" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="databaseType" value="postgres" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="jobExecutor" ref="commonjJobExecutor" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="jobExecutorActivate" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="transactionsExternallyManaged" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="commonjJobExecutor" class="org.activiti.commonj.CommonjJobExecutor"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="workManagerJndiName" value="java:comp/env/wm/ActivitiWM" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;Heiko, in the first reply you've mentioned that you have a version of JobAcquisitionThread implemented with TimerManager but it isn't in the attachment, would you mind sharing it with us?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only issue I have seen under WL so far is the reports on stuck WorkManager threads (see heymro's comment) which are harmless and can be suppressed and the only stuck thread is actually JobAcqusitionThread running continuously in WorkManager&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And of course another +1 for creating an activiti-commonj module for proper application server deployments.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Andrey&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Mar 2013 06:25:20 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/jobacquisitionthread-and-jobexecutor/m-p/109055#M76520</guid>
      <dc:creator>melentye</dc:creator>
      <dc:date>2013-03-25T06:25:20Z</dc:date>
    </item>
  </channel>
</rss>

