J'ai l'intention de créer un "workflow" en utilisant l'outil Activiti. Je veux l'utiliser avec une base de données "standalone" parce que au bout du compte, je veux l'addresser avec des services REST.
Bien qu j'aie mis le jar contenant le driveur de la base de données correctement, l'engin (processEngine) est toujours null si je veux le créer de facon suivante:
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
Avec le code ci-dessous, j'ai vérifié qu'il y'y a pas de problèmes avec la connexion avec la base de données -
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| import java.sql.*;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
public class Main {
public static void main(String[] a)
throws Exception {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.
getConnection("jdbc:h2:~/test", "sa", "");
System.out.println(conn.toString());
// add application code here
conn.close();
}
} |
conn n'est pas zéro, et l'objet conn peut être crée sans problèmes.
Voici ma configuration dans le fichier activiti.cfg.xml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="jdbcUrl" value="jdbc:h2:~/test;DB_CLOSE_DELAY=1000" />
<property name="jdbcDriver" value="org.h2.Driver" />
<property name="jdbcUsername" value="sa" />
<property name="jdbcPassword" value="" />
<property name="databaseSchemaUpdate" value="true" />
<property name="jobExecutorActivate" value="false" />
<property name="mailServerHost" value="mail.my-corp.com" />
<property name="mailServerPort" value="5025" />
</bean>
</beans> |
Dans le fichier war que j'ai dans mon fichier webapps du Tomcat, j'ai mis cette configuration:
1 2 3 4 5 6 7
|
db=h2
jdbc.driver=org.h2.Driver
jdbc.url=jdbc:h2:~/test;
DB_CLOSE_DELAY=1000
jdbc.username=sa
jdbc.password= |
Je n'ai aucune idée pourquoi le processEngin est quand même null.
Partager