<?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 Access to dbconnection to execute arbritrary query in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123665#M87064</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Is there a way to either access the internal db connection object in a script task or Java task, so that I can run an arbitrary query?&amp;nbsp; I am embedding Activiti using plain java&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.createStandaloneProcessEngineConfiguration()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setJdbcUrl((String) params.get("url"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setJdbcDriver((String) params.get("driver"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setJdbcUsername((String) params.get("user"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setJdbcPassword((String) params.get("pword"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setMailServerHost((String) params.get("emailhost"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setMailServerPort(Integer.parseInt((String) params.get("emailport")))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setMailServerUsername((String) params.get("emailuser"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setMailServerPassword((String) params.get("emailpass"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setMailServerDefaultFrom((String) params.get("emaildefaultfrom"))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setJobExecutorActivate(true)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;.setProcessEngineName((String) params.get("dbname"));&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// add our customform types to the engine&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;AbstractFormType&amp;gt; customFormTypes = new ArrayList&amp;lt;AbstractFormType&amp;gt;();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;customFormTypes.add(new FileFormType());&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;customFormTypes.add(new TextAreaFormType());&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;customFormTypes.add(new RadioFormType(null));&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((ProcessEngineConfigurationImpl) processEngineConfiguration).setCustomFormTypes(customFormTypes);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//now we can add our custom handlers for user/groups&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;lt;Class&amp;lt; ? &amp;gt;, SessionFactory&amp;gt; sessionFactories =&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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;((ProcessEngineConfigurationImpl) processEngineConfiguration).getSessionFactories();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sessionFactories.put(UserEntityManager.class, new CustomUserEntityManagerFactory());&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sessionFactories.put(GroupEntityManager.class, new CustomGroupEntityManagerFactory());&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProcessEngines.registerProcessEngine(processEngine);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;everything is working fine so far, but I need to run some queries in a script or java task and I would prefer to do this with out making new database connections.&amp;nbsp; Script task would be preferred as I would not need to have java class files during deployment.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 08 May 2013 15:46:40 GMT</pubDate>
    <dc:creator>tcheekva</dc:creator>
    <dc:date>2013-05-08T15:46:40Z</dc:date>
    <item>
      <title>Access to dbconnection to execute arbritrary query</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123665#M87064</link>
      <description>Is there a way to either access the internal db connection object in a script task or Java task, so that I can run an arbitrary query?&amp;nbsp; I am embedding Activiti using plain java&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration&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;.createStandaloneP</description>
      <pubDate>Wed, 08 May 2013 15:46:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123665#M87064</guid>
      <dc:creator>tcheekva</dc:creator>
      <dc:date>2013-05-08T15:46:40Z</dc:date>
    </item>
    <item>
      <title>Re: Access to dbconnection to execute arbritrary query</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123666#M87065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You can try using the Context.getCommandContext() to obtain a org.activiti.engine.impl.interceptor.CommandContext. This allows you to get hold of the DBSqlSession and getSQLSession() on this. The SQLSession exposes a getConnection() method which returns the current session used in the process that is executing the script/service task.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 May 2013 07:51:37 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123666#M87065</guid>
      <dc:creator>frederikherema1</dc:creator>
      <dc:date>2013-05-13T07:51:37Z</dc:date>
    </item>
    <item>
      <title>Re: Access to dbconnection to execute arbritrary query</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123667#M87066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This is working fine in a task, thanks.&amp;nbsp; I also need access from within a new form type (AbstractFormType).&amp;nbsp; creating a dynamic selection from a database table.&amp;nbsp; The Context above is returning null.&amp;nbsp; Is there a way to do this from a FormType? I was also trying thru a processEngine but how do I know which engine I am running in?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 May 2013 18:15:32 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123667#M87066</guid>
      <dc:creator>tcheekva</dc:creator>
      <dc:date>2013-05-20T18:15:32Z</dc:date>
    </item>
    <item>
      <title>Re: Access to dbconnection to execute arbritrary query</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123668#M87067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;When getting form-properties, there is no process context active YET. You'll have to make you're type smart enough (e.g.. wire reference to processEngine in Spring) to know what engine to use to get hold of a SQLConnection.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 May 2013 05:25:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123668#M87067</guid>
      <dc:creator>frederikherema1</dc:creator>
      <dc:date>2013-05-22T05:25:47Z</dc:date>
    </item>
    <item>
      <title>Re: Access to dbconnection to execute arbritrary query</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123669#M87068</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;When getting form-properties, there is no process context active YET. You'll have to make you're type smart enough (e.g.. wire reference to processEngine in Spring) to know what engine to use to get hold of a SQLConnection.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 May 2013 05:25:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/access-to-dbconnection-to-execute-arbritrary-query/m-p/123669#M87068</guid>
      <dc:creator>frederikherema1</dc:creator>
      <dc:date>2013-05-22T05:25:47Z</dc:date>
    </item>
  </channel>
</rss>

