提交 1b9525f2 编写于 作者: T tijsrademakers

merged with latest changes

......@@ -41,6 +41,22 @@
<h1>Activiti Release Notes</h1>
<h3>Release Notes - Activiti - Version 5.11</h3>
<h4>Highlights</h4>
<ul>
<li>Enhanced ability to query for history variable values</li>
</ul>
<h4>Important upgrade note</h4>
<p>In 5.11 we introduce a new history table for process variables. There is an optional migration database script
that you can run to generate historic variables for existing process instances. This is optional because
the engine will just create those records upon update of the variable if they don't exist.
</p>
<p>The files can be found in the <code>activiti-engine-5.11.jar</code> file in directory
<code>org/activiti/db/upgrade/optional</code>.
</p>
<h3>Release Notes - Activiti - Version 5.10</h3>
<h4>Highlights</h4>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti Engine Examples</name>
......@@ -47,9 +47,9 @@
<repositories>
<repository>
<id>activiti</id>
<name>Activiti Repository</name>
<url>https://maven.alfresco.com/nexus/content/repositories/activiti/</url>
<id>activiti</id>
<name>Activiti Repository</name>
<url>https://maven.alfresco.com/nexus/content/repositories/activiti/</url>
</repository>
<repository>
<id>spring-extensions-milestone</id>
......@@ -68,8 +68,12 @@
<build>
<testResources>
<testResource><directory>src/test/resources</directory></testResource>
<testResource><directory>src/main/process</directory></testResource>
<testResource>
<directory>src/test/resources</directory>
</testResource>
<testResource>
<directory>src/main/process</directory>
</testResource>
</testResources>
<plugins>
<plugin>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
......@@ -83,7 +83,7 @@
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
<scope>runtime</scope>
</dependency>
</dependency>
<dependency>
<groupId>org.subethamail</groupId>
<artifactId>subethasmtp-wiser</artifactId>
......@@ -102,7 +102,7 @@
<artifactId>jtds</artifactId>
</dependency>
<dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
......@@ -113,7 +113,7 @@
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
......@@ -160,8 +160,8 @@
<configuration>
<tasks>
<condition property="cfg.file.name" value="activiti-context.xml" else="activiti.cfg.xml">
<equals arg1="${cfg}" arg2="spring" />
</condition>
<equals arg1="${cfg}" arg2="spring" />
</condition>
<echo message="using configuration src/main/cfg/server.${server}.cfg.${cfg}.tx.${tx}.xml as ${cfg.file.name}" />
<echo message="using database properties ${user.home}/.activiti/server/build.${database}.properties" />
<copy tofile="target/classes/${cfg.file.name}" file="src/main/cfg/server.${server}.cfg.${cfg}.tx.${tx}.xml">
......@@ -177,45 +177,45 @@
<profiles>
<profile>
<id>jboss</id>
<activation>
<property>
<name>server</name>
<value>jboss</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>org.apache.cactus</groupId>
<artifactId>cactus.integration.ant</artifactId>
<version>1.8.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<id>jboss</id>
<activation>
<property>
<name>server</name>
<value>jboss</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>org.apache.cactus</groupId>
<artifactId>cactus.integration.ant</artifactId>
<version>1.8.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</profile>
</profiles>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Camel</name>
<groupId>org.activiti</groupId>
<artifactId>activiti-camel</artifactId>
<packaging>bundle</packaging>
......@@ -19,6 +20,7 @@
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
......@@ -28,7 +30,7 @@
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<scope>provided</scope>
</dependency>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
......
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Cdi</name>
<artifactId>activiti-cdi</artifactId>
<packaging>jar</packaging>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
<profiles>
<profile>
<id>openwebbeans-embedded-1</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-openwebbeans-embedded-1</artifactId>
<version>1.0.0.CR2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans-spi</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans-impl</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans</artifactId>
<version>1.1.3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</profile>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<id>distro</id>
<dependencies>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-weld-ee-embedded-1.1</artifactId>
<version>1.0.0.CR3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core-bom</artifactId>
<version>1.1.5.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<version>1.0.0.CR7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-6.0</artifactId>
<version>2.0.0.Final</version>
<type>pom</type>
<scope>provided</scope>
<exclusions>
<exclusion>
<artifactId>xalan</artifactId>
<groupId>org.apache.xalan</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<finalName>activiti-cdi</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Cdi</name>
<artifactId>activiti-cdi</artifactId>
<packaging>jar</packaging>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
<profiles>
<profile>
<id>openwebbeans-embedded-1</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-openwebbeans-embedded-1</artifactId>
<version>1.0.0.CR2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans-spi</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans-impl</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans</artifactId>
<version>1.1.3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</profile>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<id>distro</id>
<dependencies>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-weld-ee-embedded-1.1</artifactId>
<version>1.0.0.CR3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core-bom</artifactId>
<version>1.1.5.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<version>1.0.0.CR7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-6.0</artifactId>
<version>2.0.0.Final</version>
<type>pom</type>
<scope>provided</scope>
<exclusions>
<exclusion>
<artifactId>xalan</artifactId>
<groupId>org.apache.xalan</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<finalName>activiti-cdi</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Cxf</name>
<artifactId>activiti-cxf</artifactId>
<name>Activiti - Cxf</name>
<artifactId>activiti-cxf</artifactId>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
</parent>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-activation_1.1_spec</artifactId>
</exclusion>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-xjc</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-activation_1.1_spec</artifactId>
</exclusion>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-xjc</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>org.activiti.impl*,org.activiti.engine.impl*</excludePackageNames>
</configuration>
</plugin>
</plugins>
</reporting>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>org.activiti.impl*,org.activiti.engine.impl*</excludePackageNames>
</configuration>
</plugin>
</plugins>
</reporting>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Engine</name>
<artifactId>activiti-engine</artifactId>
......@@ -83,9 +83,9 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
<scope>test</scope>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.subethamail</groupId>
......@@ -134,23 +134,23 @@
</repositories>
<properties>
<activiti.artifact>
org.activiti.db.mapping.entity,
org.activiti.engine
</activiti.artifact>
<activiti.osgi.import.additional>
junit*;resolution:=optional,
org.junit*;resolution:=optional,
com.sun*;resolution:=optional,
javax.persistence*;resolution:=optional,
org.apache.commons.mail;resolution:=optional,
org.apache.tools.ant*;resolution:=optional,
org.apache.xerces*;resolution:=optional,
org.activiti.osgi*;resolution:=optional,
org.springframework*;resolution:=optional,
org.drools*;resolution:=optional,
com.fasterxml*;resolution:=optional,
</activiti.osgi.import.additional>
<activiti.artifact>
org.activiti.db.mapping.entity,
org.activiti.engine
</activiti.artifact>
<activiti.osgi.import.additional>
junit*;resolution:=optional,
org.junit*;resolution:=optional,
com.sun*;resolution:=optional,
javax.persistence*;resolution:=optional,
org.apache.commons.mail;resolution:=optional,
org.apache.tools.ant*;resolution:=optional,
org.apache.xerces*;resolution:=optional,
org.activiti.osgi*;resolution:=optional,
org.springframework*;resolution:=optional,
org.drools*;resolution:=optional,
com.fasterxml*;resolution:=optional,
</activiti.osgi.import.additional>
</properties>
<build>
......@@ -177,58 +177,58 @@
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>cleanVersions</goal>
</goals>
</execution>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
</plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>cleanVersions</goal>
</goals>
</execution>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.felix</groupId>
<artifactId>
maven-bundle-plugin
</artifactId>
<versionRange>
[2.1.0,)
</versionRange>
<goals>
<goal>cleanVersions</goal>
<goal>manifest</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.felix</groupId>
<artifactId>
maven-bundle-plugin
</artifactId>
<versionRange>
[2.1.0,)
</versionRange>
<goals>
<goal>cleanVersions</goal>
<goal>manifest</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
......@@ -245,18 +245,18 @@
<id>create-test-jar</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
......@@ -483,15 +483,15 @@
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/JdbcMetaDataTest.java</include>
</includes>
<excludes />
</configuration>
</plugin>
<excludes />
</configuration>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.4</version>
......@@ -526,7 +526,7 @@
<tasks>
<echo message="dropping schema in ${metadatabase}" />
<ant antfile="${basedir}/../../qa/db/build.xml" target="drop.db.schema"
inheritAll="false">
inheritAll="false">
<property name="test_classpath" refid="maven.test.classpath" />
<property name="database" value="${metadatabase}" />
</ant>
......@@ -573,39 +573,39 @@
</dependencies>
</profile>
<profile>
<id>mssql</id>
<activation>
<property>
<name>database</name>
<value>mssql</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>mssql</id>
<activation>
<property>
<name>database</name>
<value>mssql</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>mysql</id>
<activation>
<property>
<name>database</name>
<value>mysql</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>mysql</id>
<activation>
<property>
<name>database</name>
<value>mysql</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
</profiles>
</project>
......@@ -32,8 +32,8 @@ public class ProcessInstanceQueryProperty implements QueryProperty {
private static final Map<String, ProcessInstanceQueryProperty> properties = new HashMap<String, ProcessInstanceQueryProperty>();
public static final ProcessInstanceQueryProperty PROCESS_INSTANCE_ID = new ProcessInstanceQueryProperty("RES.ID_");
public static final ProcessInstanceQueryProperty PROCESS_DEFINITION_KEY = new ProcessInstanceQueryProperty("RES.KEY_");
public static final ProcessInstanceQueryProperty PROCESS_DEFINITION_ID = new ProcessInstanceQueryProperty("RES.ID_");
public static final ProcessInstanceQueryProperty PROCESS_DEFINITION_KEY = new ProcessInstanceQueryProperty("P.KEY_");
public static final ProcessInstanceQueryProperty PROCESS_DEFINITION_ID = new ProcessInstanceQueryProperty("P.ID_");
private String name;
......
......@@ -117,7 +117,6 @@ import org.activiti.engine.impl.util.xml.Element;
import org.activiti.engine.impl.util.xml.Parse;
import org.activiti.engine.impl.variable.VariableDeclaration;
import org.activiti.engine.repository.ProcessDefinition;
import org.drools.core.util.StringUtils;
/**
* Specific parsing of one BPMN 2.0 XML file, created by the {@link BpmnParser}.
......@@ -846,7 +845,7 @@ public class BpmnParse extends Parse {
targetRef = targetElement.getText();
}
if (StringUtils.isEmpty(targetRef)) {
if (targetRef != null && targetRef.equals("")) {
addError("targetRef is required", dataAssociationElement);
}
......
......@@ -79,6 +79,7 @@ import org.activiti.engine.impl.form.LongFormType;
import org.activiti.engine.impl.form.StringFormType;
import org.activiti.engine.impl.history.handler.HistoryParseListener;
import org.activiti.engine.impl.interceptor.CommandContextFactory;
import org.activiti.engine.impl.interceptor.CommandContextInterceptor;
import org.activiti.engine.impl.interceptor.CommandExecutor;
import org.activiti.engine.impl.interceptor.CommandExecutorImpl;
import org.activiti.engine.impl.interceptor.CommandInterceptor;
......@@ -239,7 +240,9 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig
// ID GENERATOR /////////////////////////////////////////////////////////////
protected IdGenerator idGenerator;
protected DataSource idGeneratorDataSource;
protected String idGeneratorDataSourceJndiName;
// OTHER ////////////////////////////////////////////////////////////////////
protected List<FormEngine> customFormEngines;
protected Map<String, FormEngine> formEngines;
......@@ -770,13 +773,30 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig
protected void initIdGenerator() {
if (idGenerator==null) {
CommandExecutor idGeneratorCommandExecutor = null;
if (idGeneratorDataSource!=null) {
ProcessEngineConfigurationImpl processEngineConfiguration = new StandaloneProcessEngineConfiguration();
processEngineConfiguration.setDataSource(idGeneratorDataSource);
processEngineConfiguration.setDatabaseSchemaUpdate(DB_SCHEMA_UPDATE_FALSE);
processEngineConfiguration.init();
idGeneratorCommandExecutor = processEngineConfiguration.getCommandExecutorTxRequiresNew();
} else if (idGeneratorDataSourceJndiName!=null) {
ProcessEngineConfigurationImpl processEngineConfiguration = new StandaloneProcessEngineConfiguration();
processEngineConfiguration.setDataSourceJndiName(idGeneratorDataSourceJndiName);
processEngineConfiguration.setDatabaseSchemaUpdate(DB_SCHEMA_UPDATE_FALSE);
processEngineConfiguration.init();
idGeneratorCommandExecutor = processEngineConfiguration.getCommandExecutorTxRequiresNew();
} else {
idGeneratorCommandExecutor = commandExecutorTxRequiresNew;
}
DbIdGenerator dbIdGenerator = new DbIdGenerator();
dbIdGenerator.setIdBlockSize(idBlockSize);
dbIdGenerator.setCommandExecutor(commandExecutorTxRequiresNew);
dbIdGenerator.setCommandExecutor(idGeneratorCommandExecutor);
idGenerator = dbIdGenerator;
}
}
// OTHER ////////////////////////////////////////////////////////////////////
protected void initCommandContextFactory() {
......@@ -1671,4 +1691,19 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig
this.databaseSchema = databaseSchema;
}
public DataSource getIdGeneratorDataSource() {
return idGeneratorDataSource;
}
public void setIdGeneratorDataSource(DataSource idGeneratorDataSource) {
this.idGeneratorDataSource = idGeneratorDataSource;
}
public String getIdGeneratorDataSourceJndiName() {
return idGeneratorDataSourceJndiName;
}
public void setIdGeneratorDataSourceJndiName(String idGeneratorDataSourceJndiName) {
this.idGeneratorDataSourceJndiName = idGeneratorDataSourceJndiName;
}
}
\ No newline at end of file
......@@ -13,7 +13,6 @@
package org.activiti.engine.impl.db;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
......@@ -52,6 +51,8 @@ public class DbSqlSessionFactory implements SessionFactory {
databaseSpecificLimitAfterStatements.put("mysql", "LIMIT #{maxResults} OFFSET #{firstResult}");
databaseSpecificLimitBetweenStatements.put("mysql", "");
databaseSpecificOrderByStatements.put("mysql", defaultOrderBy);
addDatabaseSpecificStatement("mysql", "selectNextJobsToExecute", "selectNextJobsToExecute_mysql");
addDatabaseSpecificStatement("mysql", "selectExclusiveJobsToExecute", "selectExclusiveJobsToExecute_mysql");
addDatabaseSpecificStatement("mysql", "selectProcessDefinitionsByQueryCriteria", "selectProcessDefinitionsByQueryCriteria_mysql");
addDatabaseSpecificStatement("mysql", "selectProcessDefinitionCountByQueryCriteria", "selectProcessDefinitionCountByQueryCriteria_mysql");
addDatabaseSpecificStatement("mysql", "selectDeploymentsByQueryCriteria", "selectDeploymentsByQueryCriteria_mysql");
......@@ -77,7 +78,6 @@ public class DbSqlSessionFactory implements SessionFactory {
addDatabaseSpecificStatement("postgres", "insertComment", "insertComment_postgres");
addDatabaseSpecificStatement("postgres", "selectCommentsByTaskId", "selectCommentsByTaskId_postgres");
addDatabaseSpecificStatement("postgres", "selectCommentsByProcessInstanceId", "selectCommentsByProcessInstanceId_postgres");
addDatabaseSpecificStatement("postgres", "selectHistoricVariableInstanceByQueryCriteria", "selectHistoricVariableInstanceByQueryCriteria_postgres");
// oracle
databaseSpecificLimitBeforeStatements.put("oracle", "select * from ( select a.*, ROWNUM rnum from (");
......
......@@ -1025,11 +1025,17 @@ public class ExecutionEntity extends VariableScopeImpl implements ActivityExecut
return getParent();
}
/** used to calculate the sourceActivityExecution for method {@link #updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity, ExecutionEntity)} */
protected ExecutionEntity getSourceActivityExecution() {
return (activityId!=null ? this : null);
}
@Override
protected void updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate) {
protected void updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate, ExecutionEntity sourceActivityExecution) {
int historyLevel = Context.getProcessEngineConfiguration().getHistoryLevel();
if (historyLevel >= ProcessEngineConfigurationImpl.HISTORYLEVEL_ACTIVITY) {
HistoricActivityInstanceEntity historicActivityInstance = ActivityInstanceEndHandler.findActivityInstance(this);
if (historyLevel >= ProcessEngineConfigurationImpl.HISTORYLEVEL_FULL
&& sourceActivityExecution!=null) {
HistoricActivityInstanceEntity historicActivityInstance = ActivityInstanceEndHandler.findActivityInstance(sourceActivityExecution);
if (historicActivityInstance!=null) {
historicVariableUpdate.setActivityInstanceId(historicActivityInstance.getId());
}
......
......@@ -235,21 +235,33 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
}
}
}
public void setVariable(String variableName, Object value) {
setVariable(variableName, value, getSourceActivityExecution());
}
protected void setVariable(String variableName, Object value, ExecutionEntity sourceActivityExecution) {
if (hasVariableLocal(variableName)) {
setVariableLocal(variableName, value);
setVariableLocal(variableName, value, sourceActivityExecution);
return;
}
VariableScope parentVariableScope = getParentVariableScope();
VariableScopeImpl parentVariableScope = getParentVariableScope();
if (parentVariableScope!=null) {
parentVariableScope.setVariable(variableName, value);
if (sourceActivityExecution==null) {
parentVariableScope.setVariable(variableName, value);
} else {
parentVariableScope.setVariable(variableName, value, sourceActivityExecution);
}
return;
}
createVariableLocal(variableName, value);
}
public Object setVariableLocal(String variableName, Object value) {
return setVariableLocal(variableName, value, getSourceActivityExecution());
}
public Object setVariableLocal(String variableName, Object value, ExecutionEntity sourceActivityExecution) {
ensureVariableInstancesInitialized();
VariableInstanceEntity variableInstance = variableInstances.get(variableName);
if ((variableInstance != null) && (!variableInstance.getType().isAbleToStore(value))) {
......@@ -260,46 +272,66 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
if (variableInstance == null) {
createVariableLocal(variableName, value);
} else {
updateVariableInstance(variableInstance, value);
updateVariableInstance(variableInstance, value, sourceActivityExecution);
}
return null;
}
public void createVariableLocal(String variableName, Object value) {
createVariableLocal(variableName, value, getSourceActivityExecution());
}
/** only called when a new variable is created on this variable scope.
* This method is also responsible for propagating the creation of this
* variable to the history. */
public void createVariableLocal(String variableName, Object value) {
protected void createVariableLocal(String variableName, Object value, ExecutionEntity sourceActivityExecution) {
ensureVariableInstancesInitialized();
if (variableInstances.containsKey(variableName)) {
throw new ActivitiException("variable '"+variableName+"' already exists. Use setVariableLocal if you want to overwrite the value");
}
createVariableInstance(variableName, value);
createVariableInstance(variableName, value, sourceActivityExecution);
}
public void removeVariable(String variableName) {
removeVariable(variableName, getSourceActivityExecution());
}
protected void removeVariable(String variableName, ExecutionEntity sourceActivityExecution) {
ensureVariableInstancesInitialized();
if (variableInstances.containsKey(variableName)) {
removeVariableLocal(variableName);
return;
}
VariableScope parentVariableScope = getParentVariableScope();
VariableScopeImpl parentVariableScope = getParentVariableScope();
if (parentVariableScope!=null) {
parentVariableScope.removeVariable(variableName);
if (sourceActivityExecution==null) {
parentVariableScope.removeVariable(variableName);
} else {
parentVariableScope.removeVariable(variableName, sourceActivityExecution);
}
}
}
public void removeVariableLocal(String variableName) {
removeVariableLocal(variableName, getSourceActivityExecution());
}
protected ExecutionEntity getSourceActivityExecution() {
return null;
}
protected void removeVariableLocal(String variableName, ExecutionEntity sourceActivityExecution) {
ensureVariableInstancesInitialized();
VariableInstanceEntity variableInstance = variableInstances.remove(variableName);
if (variableInstance != null) {
deleteVariableInstanceForExplicitUserCall(variableInstance);
deleteVariableInstanceForExplicitUserCall(variableInstance, sourceActivityExecution);
}
}
protected void deleteVariableInstanceForExplicitUserCall(VariableInstanceEntity variableInstance) {
protected void deleteVariableInstanceForExplicitUserCall(VariableInstanceEntity variableInstance, ExecutionEntity sourceActivityExecution) {
variableInstance.delete();
variableInstance.setValue(null);
......@@ -311,7 +343,7 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
if (historyLevel == ProcessEngineConfigurationImpl.HISTORYLEVEL_FULL) {
HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate = new HistoricDetailVariableInstanceUpdateEntity(variableInstance);
updateActivityInstanceIdInHistoricVariableUpdate(historicVariableUpdate);
updateActivityInstanceIdInHistoricVariableUpdate(historicVariableUpdate, sourceActivityExecution);
Context
.getCommandContext()
.getDbSqlSession()
......@@ -319,12 +351,12 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
}
}
protected void updateVariableInstance(VariableInstanceEntity variableInstance, Object value) {
protected void updateVariableInstance(VariableInstanceEntity variableInstance, Object value, ExecutionEntity sourceActivityExecution) {
variableInstance.setValue(value);
int historyLevel = Context.getProcessEngineConfiguration().getHistoryLevel();
if (historyLevel==ProcessEngineConfigurationImpl.HISTORYLEVEL_FULL) {
insertHistoricDetailVariableInstanceUpdate(variableInstance);
insertHistoricDetailVariableInstanceUpdate(variableInstance, sourceActivityExecution);
}
if (historyLevel>=ProcessEngineConfigurationImpl.HISTORYLEVEL_AUDIT) {
......@@ -332,7 +364,7 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
}
}
protected VariableInstanceEntity createVariableInstance(String variableName, Object value) {
protected VariableInstanceEntity createVariableInstance(String variableName, Object value, ExecutionEntity sourceActivityExecution) {
VariableTypes variableTypes = Context
.getProcessEngineConfiguration()
.getVariableTypes();
......@@ -347,7 +379,7 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
int historyLevel = Context.getProcessEngineConfiguration().getHistoryLevel();
if (historyLevel==ProcessEngineConfigurationImpl.HISTORYLEVEL_FULL) {
insertHistoricDetailVariableInstanceUpdate(variableInstance);
insertHistoricDetailVariableInstanceUpdate(variableInstance, sourceActivityExecution);
}
if (historyLevel>=ProcessEngineConfigurationImpl.HISTORYLEVEL_AUDIT) {
......@@ -365,10 +397,10 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
.insert(historicVariableInstance);
}
protected void insertHistoricDetailVariableInstanceUpdate(VariableInstanceEntity variableInstance) {
protected void insertHistoricDetailVariableInstanceUpdate(VariableInstanceEntity variableInstance, ExecutionEntity sourceActivityExecution) {
HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate = new HistoricDetailVariableInstanceUpdateEntity(variableInstance);
updateActivityInstanceIdInHistoricVariableUpdate(historicVariableUpdate);
updateActivityInstanceIdInHistoricVariableUpdate(historicVariableUpdate, sourceActivityExecution);
Context
.getCommandContext()
......@@ -379,7 +411,7 @@ public abstract class VariableScopeImpl implements Serializable, VariableScope {
/** execution variable updates have activity instance ids
* but historic task variable updates don't
* @see ExecutionEntity#updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity) */
protected void updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate) {
protected void updateActivityInstanceIdInHistoricVariableUpdate(HistoricDetailVariableInstanceUpdateEntity historicVariableUpdate, ExecutionEntity sourceActivityExecution) {
}
/** only called when an existing variable is updated.
......
......@@ -63,7 +63,7 @@ create table ACT_RU_JOB (
RETRIES_ integer,
EXCEPTION_STACK_ID_ varchar(64),
EXCEPTION_MSG_ varchar(4000),
DUEDATE_ timestamp null,
DUEDATE_ timestamp,
REPEAT_ varchar(255),
HANDLER_TYPE_ varchar(255),
HANDLER_CFG_ varchar(4000),
......@@ -95,8 +95,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
TASK_DEF_KEY_ varchar(255),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
DELEGATION_ varchar(64),
PRIORITY_ integer,
CREATE_TIME_ timestamp,
......@@ -107,9 +107,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ varchar(64) not null,
REV_ integer,
GROUP_ID_ varchar(64),
GROUP_ID_ varchar(255),
TYPE_ varchar(255),
USER_ID_ varchar(64),
USER_ID_ varchar(255),
TASK_ID_ varchar(64),
PROC_DEF_ID_ varchar(64),
primary key (ID_)
......
......@@ -44,8 +44,8 @@ create table ACT_HI_TASKINST (
NAME_ varchar(255),
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
START_TIME_ timestamp not null,
END_TIME_ timestamp,
DURATION_ bigint,
......
......@@ -93,8 +93,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
TASK_DEF_KEY_ varchar(255),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
DELEGATION_ varchar(64),
PRIORITY_ integer,
CREATE_TIME_ timestamp,
......@@ -105,9 +105,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ varchar(64),
REV_ integer,
GROUP_ID_ varchar(64),
GROUP_ID_ varchar(255),
TYPE_ varchar(255),
USER_ID_ varchar(64),
USER_ID_ varchar(255),
TASK_ID_ varchar(64),
PROC_DEF_ID_ varchar(64),
primary key (ID_)
......
......@@ -41,8 +41,8 @@ create table ACT_HI_TASKINST (
NAME_ varchar(255),
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
START_TIME_ timestamp not null,
END_TIME_ timestamp,
DURATION_ bigint,
......
......@@ -93,8 +93,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ nvarchar(64),
DESCRIPTION_ nvarchar(4000),
TASK_DEF_KEY_ nvarchar(255),
OWNER_ nvarchar(64),
ASSIGNEE_ nvarchar(64),
OWNER_ nvarchar(255),
ASSIGNEE_ nvarchar(255),
DELEGATION_ nvarchar(64),
PRIORITY_ int,
CREATE_TIME_ datetime,
......@@ -105,9 +105,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ nvarchar(64),
REV_ int,
GROUP_ID_ nvarchar(64),
GROUP_ID_ nvarchar(255),
TYPE_ nvarchar(255),
USER_ID_ nvarchar(64),
USER_ID_ nvarchar(255),
TASK_ID_ nvarchar(64),
PROC_DEF_ID_ nvarchar(64),
primary key (ID_)
......
......@@ -41,8 +41,8 @@ create table ACT_HI_TASKINST (
NAME_ nvarchar(255),
PARENT_TASK_ID_ nvarchar(64),
DESCRIPTION_ nvarchar(4000),
OWNER_ nvarchar(64),
ASSIGNEE_ nvarchar(64),
OWNER_ nvarchar(255),
ASSIGNEE_ nvarchar(255),
START_TIME_ datetime not null,
END_TIME_ datetime,
DURATION_ numeric(19,0),
......
......@@ -94,8 +94,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
TASK_DEF_KEY_ varchar(255),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
DELEGATION_ varchar(64),
PRIORITY_ integer,
CREATE_TIME_ timestamp,
......@@ -106,9 +106,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ varchar(64),
REV_ integer,
GROUP_ID_ varchar(64),
GROUP_ID_ varchar(255),
TYPE_ varchar(255),
USER_ID_ varchar(64),
USER_ID_ varchar(255),
TASK_ID_ varchar(64),
PROC_DEF_ID_ varchar(64),
primary key (ID_)
......
......@@ -42,8 +42,8 @@ create table ACT_HI_TASKINST (
NAME_ varchar(255),
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
START_TIME_ datetime not null,
END_TIME_ datetime,
DURATION_ bigint,
......
......@@ -93,8 +93,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ NVARCHAR2(64),
DESCRIPTION_ NVARCHAR2(2000),
TASK_DEF_KEY_ NVARCHAR2(255),
OWNER_ NVARCHAR2(64),
ASSIGNEE_ NVARCHAR2(64),
OWNER_ NVARCHAR2(255),
ASSIGNEE_ NVARCHAR2(255),
DELEGATION_ NVARCHAR2(64),
PRIORITY_ INTEGER,
CREATE_TIME_ TIMESTAMP(6),
......@@ -105,9 +105,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ NVARCHAR2(64),
REV_ INTEGER,
GROUP_ID_ NVARCHAR2(64),
GROUP_ID_ NVARCHAR2(255),
TYPE_ NVARCHAR2(255),
USER_ID_ NVARCHAR2(64),
USER_ID_ NVARCHAR2(255),
TASK_ID_ NVARCHAR2(64),
PROC_DEF_ID_ NVARCHAR2(64),
primary key (ID_)
......
......@@ -41,8 +41,8 @@ create table ACT_HI_TASKINST (
PARENT_TASK_ID_ NVARCHAR2(64),
NAME_ NVARCHAR2(255),
DESCRIPTION_ NVARCHAR2(2000),
OWNER_ NVARCHAR2(64),
ASSIGNEE_ NVARCHAR2(64),
OWNER_ NVARCHAR2(255),
ASSIGNEE_ NVARCHAR2(255),
START_TIME_ TIMESTAMP(6) not null,
END_TIME_ TIMESTAMP(6),
DURATION_ NUMBER(19,0),
......@@ -55,8 +55,8 @@ create table ACT_HI_TASKINST (
create table ACT_HI_VARINST (
ID_ NVARCHAR2(64) not null,
PROC_INST_ID_ NVARCHAR2(64),
EXECUTION_ID_ NVARCHAR(64),
TASK_ID_ NVARCHAR(64),
EXECUTION_ID_ NVARCHAR2(64),
TASK_ID_ NVARCHAR2(64),
NAME_ NVARCHAR2(255) not null,
VAR_TYPE_ NVARCHAR2(100),
REV_ INTEGER,
......
......@@ -94,8 +94,8 @@ create table ACT_RU_TASK (
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
TASK_DEF_KEY_ varchar(255),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
DELEGATION_ varchar(64),
PRIORITY_ integer,
CREATE_TIME_ timestamp,
......@@ -106,9 +106,9 @@ create table ACT_RU_TASK (
create table ACT_RU_IDENTITYLINK (
ID_ varchar(64),
REV_ integer,
GROUP_ID_ varchar(64),
GROUP_ID_ varchar(255),
TYPE_ varchar(255),
USER_ID_ varchar(64),
USER_ID_ varchar(255),
TASK_ID_ varchar(64),
PROC_DEF_ID_ varchar (64),
primary key (ID_)
......
......@@ -42,8 +42,8 @@ create table ACT_HI_TASKINST (
NAME_ varchar(255),
PARENT_TASK_ID_ varchar(64),
DESCRIPTION_ varchar(4000),
OWNER_ varchar(64),
ASSIGNEE_ varchar(64),
OWNER_ varchar(255),
ASSIGNEE_ varchar(255),
START_TIME_ timestamp not null,
END_TIME_ timestamp,
DURATION_ bigint,
......
......@@ -89,7 +89,7 @@
<select id="selectExecutionsByQueryCriteria" parameterType="org.activiti.engine.impl.ExecutionQueryImpl" resultMap="executionResultMap">
${limitBefore}
select RES.* ${limitBetween}, KEY_
select RES.* ${limitBetween}, P.KEY_
<include refid="selectExecutionsByQueryCriteriaSql"/>
${orderBy}
${limitAfter}
......@@ -103,7 +103,7 @@
<!-- same as selectExecutionByQueryCriteria, but with different parameterType -->
<select id="selectProcessInstanceByQueryCriteria" parameterType="org.activiti.engine.impl.ProcessInstanceQueryImpl" resultMap="executionResultMap">
${limitBefore}
select RES.* ${limitBetween}, KEY_
select RES.* ${limitBetween}, P.KEY_
<include refid="selectExecutionsByQueryCriteriaSql"/>
${orderBy}
${limitAfter}
......
<?xml version="1.0" encoding="UTF-8" ?>
<!--
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.activiti.engine.impl.persistence.entity.HistoricProcessVariableEntity">
<!-- HISTORIC PROCESS VARIABLE INSERT -->
<insert id="insertHistoricProcessVariable" parameterType="org.activiti.engine.impl.persistence.entity.HistoricProcessVariableEntity">
insert into ${prefix}ACT_HI_PROCVARIABLE (ID_, PROC_INST_ID_, NAME_, REV_, VAR_TYPE_, BYTEARRAY_ID_, DOUBLE_, LONG_ , TEXT_, TEXT2_)
values (
#{id, jdbcType=VARCHAR},
#{processInstanceId, jdbcType=VARCHAR},
#{variableName, jdbcType=VARCHAR},
#{revision, jdbcType=VARCHAR},
#{variableType, jdbcType=VARCHAR},
#{byteArrayValueId, jdbcType=VARCHAR},
#{doubleValue, jdbcType=DOUBLE},
#{longValue, jdbcType=BIGINT},
#{textValue, jdbcType=VARCHAR},
#{textValue2, jdbcType=VARCHAR}
)
</insert>
<!-- HISTORIC PROCESS VARIABLE DELETE -->
<delete id="deleteHistoricProcessVariable">
delete from ${prefix}ACT_HI_PROCVARIABLE where ID_ = #{historicDetailId}
</delete>
<!-- HISTORIC PROCESS VARIABLE RESULTMAP -->
<resultMap id="historicProcessVariableResultMap" type="org.activiti.engine.impl.persistence.entity.HistoricProcessVariableEntity">
<id property="id" column="ID_" jdbcType="VARCHAR" />
<result property="processInstanceId" column="PROC_INST_ID_" jdbcType="VARCHAR" />
<result property="name" column="NAME_" javaType="String" jdbcType="VARCHAR" />
<result property="revision" column="REV_" jdbcType="INTEGER" />
<result property="variableType" column="VAR_TYPE_" javaType="org.activiti.engine.impl.variable.VariableType" jdbcType="VARCHAR"/>
<result property="byteArrayValueId" column="BYTEARRAY_ID_" jdbcType="VARCHAR" />
<result property="doubleValue" column="DOUBLE_" jdbcType="DOUBLE" />
<result property="textValue" column="TEXT_" jdbcType="VARCHAR" />
<result property="textValue2" column="TEXT2_" jdbcType="VARCHAR" />
<result property="longValue" column="LONG_" jdbcType="BIGINT" />
<association property="byteArrayValue"
column="BYTEARRAY_ID_"
javaType="org.activiti.engine.impl.persistence.entity.ByteArrayEntity"
select="org.activiti.engine.impl.persistence.entity.VariableInstanceEntity.selectByteArray" />
</resultMap>
<resultMap id="historicProcessVariableResultMap_postgres" type="org.activiti.engine.impl.persistence.entity.HistoricProcessVariableEntity">
<id property="id" column="ID_" jdbcType="VARCHAR" />
<result property="processInstanceId" column="PROC_INST_ID_" jdbcType="VARCHAR" />
<result property="name" column="NAME_" javaType="String" jdbcType="VARCHAR" />
<result property="revision" column="REV_" jdbcType="INTEGER" />
<result property="variableType" column="VAR_TYPE_" javaType="org.activiti.engine.impl.variable.VariableType" jdbcType="VARCHAR"/>
<result property="byteArrayValueId" column="BYTEARRAY_ID_" jdbcType="VARCHAR" />
<result property="doubleValue" column="DOUBLE_" jdbcType="DOUBLE" />
<result property="textValue" column="TEXT_" jdbcType="VARCHAR" />
<result property="textValue2" column="TEXT2_" jdbcType="VARCHAR" />
<result property="longValue" column="LONG_" jdbcType="BIGINT" />
<association property="byteArrayValue"
column="BYTEARRAY_ID_"
javaType="org.activiti.engine.impl.persistence.entity.ByteArrayEntity"
select="org.activiti.engine.impl.persistence.entity.VariableInstanceEntity.selectByteArray_postgres" />
</resultMap>
<!-- HISTORIC VARIABLE UPDATE SELECT -->
<select id="selectHistoricProcessVariableByQueryCriteria" parameterType="org.activiti.engine.impl.HistoricProcessVariableQueryImpl" resultMap="historicProcessVariableResultMap">
${limitBefore}
select RES.* ${limitBetween}
<include refid="selectHistoricProcessVariableByQueryCriteriaSql"/>
${orderBy}
${limitAfter}
</select>
<select id="selectHistoricProcessVariableByQueryCriteria_postgres" parameterType="org.activiti.engine.impl.HistoricProcessVariableQueryImpl" resultMap="historicProcessVariableResultMap_postgres">
${limitBefore}
select RES.* ${limitBetween}
<include refid="selectHistoricProcessVariableByQueryCriteriaSql"/>
${orderBy}
${limitAfter}
</select>
<select id="selectHistoricProcessVariableCountByQueryCriteria" parameterType="org.activiti.engine.impl.HistoricProcessVariableQueryImpl" resultType="long">
select count(RES.*)
<include refid="selectHistoricProcessVariableByQueryCriteriaSql"/>
</select>
<sql id="selectHistoricProcessVariableByQueryCriteriaSql">
from ${prefix}ACT_HI_PROCVARIABLE RES
<where>
<if test="processInstanceId != null">
RES.PROC_INST_ID_ = #{processInstanceId}
</if>
<if test="variableName != null">
and RES.NAME_ = #{variableName}
</if>
<if test="variableNameLike != null">
and RES.NAME_ like #{variableNameLike}
</if>
<!-- PLEASE NOTE: If you change anything have a look into the Execution, the same query object is used there! -->
<if test="queryVariableValue != null" >
<if test="!queryVariableValue.type.equals('null')">
<!-- When operator is not-equals or type of value is null, type doesn't matter! -->
and RES.VAR_TYPE_ = #{queryVariableValue.type}
</if>
<if test="queryVariableValue.textValue != null &amp;&amp; queryVariableValue.longValue == null &amp;&amp; queryVariableValue.doubleValue == null">
and RES.TEXT_
<choose>
<when test="queryVariableValue.operator.equals('LIKE')">LIKE</when>
<otherwise><include refid="executionVariableOperator" /></otherwise>
</choose>
#{queryVariableValue.textValue}
</if>
<if test="queryVariableValue.textValue2 != null">
and RES.TEXT2_
<choose>
<when test="queryVariableValue.operator.equals('LIKE')">LIKE</when>
<otherwise><include refid="executionVariableOperator" /></otherwise>
</choose>
#{queryVariableValue.textValue2}
</if>
<if test="queryVariableValue.longValue != null">
and RES.LONG_
<include refid="executionVariableOperator" />
#{queryVariableValue.longValue}
</if>
<if test="queryVariableValue.doubleValue != null">
and RES.DOUBLE_
<include refid="executionVariableOperator" />
#{queryVariableValue.doubleValue}
</if>
<!-- Null variable type -->
<if test="queryVariableValue.textValue == null &amp;&amp; queryVariableValue.textValue2 == null &amp;&amp; queryVariableValue.longValue == null &amp;&amp; queryVariableValue.doubleValue == null">
<choose>
<when test="queryVariableValue.operator.equals('NOT_EQUALS')">
and (RES.TEXT_ is not null or RES.TEXT2_ is not null or RES.LONG_ is not null or RES.DOUBLE_ is not null or RES.BYTEARRAY_ID_ is not null)
</when>
<otherwise>
and RES.TEXT_ is null and RES.TEXT2_ is null and RES.LONG_ is null and RES.DOUBLE_ is null and RES.BYTEARRAY_ID_ is null
</otherwise>
</choose>
</if>
</if>
</where>
</sql>
<sql id="executionVariableOperator">
<choose>
<when test="queryVariableValue.operator.equals('EQUALS')">=</when>
<when test="queryVariableValue.operator.equals('NOT_EQUALS')">&lt;&gt;</when>
<when test="queryVariableValue.operator.equals('GREATER_THAN')">&gt;</when>
<when test="queryVariableValue.operator.equals('GREATER_THAN_OR_EQUAL')">&gt;=</when>
<when test="queryVariableValue.operator.equals('LESS_THAN')">&lt;</when>
<when test="queryVariableValue.operator.equals('LESS_THAN_OR_EQUAL')">&lt;=</when>
</choose>
</sql>
</mapper>
......@@ -72,31 +72,8 @@
<result property="textValue" column="TEXT_" jdbcType="VARCHAR" />
<result property="textValue2" column="TEXT2_" jdbcType="VARCHAR" />
<result property="longValue" column="LONG_" jdbcType="BIGINT" />
<!-- <association property="byteArrayValue"
column="BYTEARRAY_ID_"
javaType="org.activiti.engine.impl.persistence.entity.ByteArrayEntity"
select="org.activiti.engine.impl.persistence.entity.VariableInstanceEntity.selectByteArray" />
--> </resultMap>
<!-- <resultMap id="historicProcessVariableResultMap_postgres" type="org.activiti.engine.impl.persistence.entity.HistoricVariableInstanceEntity">
<id property="id" column="ID_" jdbcType="VARCHAR" />
<result property="processInstanceId" column="PROC_INST_ID_" jdbcType="VARCHAR" />
<result property="executionId" column="EXECUTION_ID_" jdbcType="VARCHAR" />
<result property="taskId" column="TASK_ID_" jdbcType="VARCHAR" />
<result property="name" column="NAME_" javaType="String" jdbcType="VARCHAR" />
<result property="revision" column="REV_" jdbcType="INTEGER" />
<result property="variableType" column="VAR_TYPE_" javaType="org.activiti.engine.impl.variable.VariableType" jdbcType="VARCHAR"/>
<result property="byteArrayValueId" column="BYTEARRAY_ID_" jdbcType="VARCHAR" />
<result property="doubleValue" column="DOUBLE_" jdbcType="DOUBLE" />
<result property="textValue" column="TEXT_" jdbcType="VARCHAR" />
<result property="textValue2" column="TEXT2_" jdbcType="VARCHAR" />
<result property="longValue" column="LONG_" jdbcType="BIGINT" />
<association property="byteArrayValue"
column="BYTEARRAY_ID_"
javaType="org.activiti.engine.impl.persistence.entity.ByteArrayEntity"
select="org.activiti.engine.impl.persistence.entity.VariableInstanceEntity.selectByteArray_postgres" />
</resultMap>
-->
<!-- HISTORIC VARIABLE SELECT -->
<select id="selectHistoricVariableInstanceByQueryCriteria" parameterType="org.activiti.engine.impl.HistoricVariableInstanceQueryImpl" resultMap="historicProcessVariableResultMap">
......@@ -107,16 +84,6 @@
${limitAfter}
</select>
<!-- <select id="selectHistoricVariableInstanceByQueryCriteria_postgres" parameterType="org.activiti.engine.impl.HistoricVariableInstanceQueryImpl" resultMap="historicProcessVariableResultMap_postgres">
${limitBefore}
select *
<include refid="selectHistoricVariableInstanceByQueryCriteriaSql"/>
<if test="orderBy != null">
order by ${orderBy}
</if>
${limitAfter}
</select>
-->
<select id="selectHistoricVariableInstanceCountByQueryCriteria" parameterType="org.activiti.engine.impl.HistoricVariableInstanceQueryImpl" resultType="long">
select count(RES.*)
<include refid="selectHistoricVariableInstanceByQueryCriteriaSql"/>
......
......@@ -166,6 +166,37 @@
</sql>
<!-- SELECT DEPENDENT -->
<!-- ACT-1064: MySQL-specific select's are needed to handle non-millisecond precision -->
<select id="selectNextJobsToExecute_mysql" parameterType="org.activiti.engine.impl.db.ListQueryParameterObject" resultMap="jobResultMap">
${limitBefore}
select RES.* ${limitBetween}
from ${prefix}ACT_RU_JOB RES
LEFT OUTER JOIN ${prefix}ACT_RU_EXECUTION PI ON PI.ID_ = RES.PROCESS_INSTANCE_ID_
LEFT OUTER JOIN ${prefix}ACT_RE_PROCDEF PD ON PD.ID_ = PI.PROC_DEF_ID_
where (RETRIES_ &gt; 0)
and (DUEDATE_ is null or DUEDATE_ &lt;= #{parameter, jdbcType=TIMESTAMP})
and (LOCK_OWNER_ is null or LOCK_EXP_TIME_ &lt;= #{parameter, jdbcType=TIMESTAMP})
and (
(RES.EXECUTION_ID_ is null)
or ((PI.SUSPENSION_STATE_ = 1)
and (PD.SUSPENSION_STATE_ = 1))
)
${limitAfter}
</select>
<select id="selectExclusiveJobsToExecute_mysql" parameterType="org.activiti.engine.impl.db.ListQueryParameterObject" resultMap="jobResultMap">
${limitBefore}
select RES.* ${limitBetween}
from ${prefix}ACT_RU_JOB RES
where (RETRIES_ &gt; 0)
and (DUEDATE_ is null or DUEDATE_ &lt;= #{parameter.now, jdbcType=TIMESTAMP})
and (LOCK_OWNER_ is null or LOCK_EXP_TIME_ &lt;= #{parameter.now, jdbcType=TIMESTAMP})
and (EXCLUSIVE_ = TRUE)
and (PROCESS_INSTANCE_ID_ = #{parameter.pid})
${limitAfter}
</select>
<!-- TIMER INSERT -->
......
......@@ -15,23 +15,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
REV_ = REV_ + 1
......
......@@ -15,23 +15,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
REV_ = REV_ + 1
......
......@@ -14,23 +14,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
......
......@@ -15,23 +15,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
REV_ = REV_ + 1
......
......@@ -15,23 +15,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
REV_ = REV_ + 1
......
......@@ -15,23 +15,6 @@ create table ACT_HI_VARINST (
create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
update ACT_GE_PROPERTY
set VALUE_ = VALUE_ + 1,
REV_ = REV_ + 1
......
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
insert into ACT_HI_VARINST
(ID_,PROC_INST_ID_,NAME_,VAR_TYPE_,REV_,BYTEARRAY_ID_,DOUBLE_,LONG_,TEXT_,TEXT2_)
select d.ID_,d.PROC_INST_ID_,d.NAME_,d.VAR_TYPE_,d.REV_,d.BYTEARRAY_ID_,d.DOUBLE_,d.LONG_,d.TEXT_,d.TEXT2_
from ACT_HI_DETAIL d
inner join
(
select de.PROC_INST_ID_, de.NAME_, MAX(de.TIME_) as MAXTIME
from ACT_HI_DETAIL de
inner join ACT_HI_PROCINST p on de.PROC_INST_ID_ = p.ID_
where p.END_TIME_ is not NULL
group by de.PROC_INST_ID_, de.NAME_
)
groupeddetail on d.PROC_INST_ID_ = groupeddetail.PROC_INST_ID_
and d.NAME_ = groupeddetail.NAME_
and d.TIME_ = groupeddetail.MAXTIME
and (select prop.VALUE_ from ACT_GE_PROPERTY prop where prop.NAME_ = 'historyLevel') = 3;
package org.activiti.engine.test.db;
import org.apache.ibatis.datasource.pooled.PooledDataSource;
public class IdGeneratorDataSource extends PooledDataSource {
public IdGeneratorDataSource() {
setDriver("org.h2.Driver");
setUrl("jdbc:h2:mem:activiti");
setUsername("sa");
setPassword("");
setPoolMaximumActiveConnections(2);
}
}
package org.activiti.engine.test.db;
import org.activiti.engine.impl.pvm.delegate.ActivityBehavior;
import org.activiti.engine.impl.pvm.delegate.ActivityExecution;
public class IdGeneratorDataSourceDoNothing implements ActivityBehavior {
public void execute(ActivityExecution execution) throws Exception {
}
}
package org.activiti.engine.test.db;
import java.util.ArrayList;
import java.util.List;
import org.activiti.engine.impl.test.ResourceActivitiTestCase;
import org.activiti.engine.test.Deployment;
public class IdGeneratorDataSourceTest extends ResourceActivitiTestCase {
public IdGeneratorDataSourceTest() {
super("org/activiti/engine/test/db/IdGeneratorDataSourceTest.activiti.cfg.xml");
}
@Deployment
public void testIdGeneratorDataSource() {
List<Thread> threads = new ArrayList<Thread>();
for (int i=0; i<20; i++) {
Thread thread = new Thread() {
public void run() {
for (int j = 0; j < 5; j++) {
runtimeService.startProcessInstanceByKey("idGeneratorDataSource");
}
}
};
thread.start();
threads.add(thread);
}
for (Thread thread: threads) {
try {
thread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
......@@ -244,12 +244,15 @@ public class HistoricVariableInstanceTest extends AbstractActivitiTestCase {
// check history
List<HistoricDetail> updates = historyService.createHistoricDetailQuery().variableUpdates().list();
assertEquals(2, updates.size());
HistoricVariableUpdate update1 = (HistoricVariableUpdate) updates.get(0);
HistoricVariableUpdate update2 = (HistoricVariableUpdate) updates.get(1);
assertEquals("1", update1.getValue());
assertEquals("2", update2.getValue());
Map<String, HistoricVariableUpdate> updatesMap = new HashMap<String, HistoricVariableUpdate>();
HistoricVariableUpdate update = (HistoricVariableUpdate) updates.get(0);
updatesMap.put((String)update.getValue(), update);
update = (HistoricVariableUpdate) updates.get(1);
updatesMap.put((String)update.getValue(), update);
HistoricVariableUpdate update1 = updatesMap.get("1");
HistoricVariableUpdate update2 = updatesMap.get("2");
assertNotNull(update1.getActivityInstanceId());
assertNotNull(update1.getExecutionId());
......@@ -258,17 +261,17 @@ public class HistoricVariableInstanceTest extends AbstractActivitiTestCase {
assertEquals("usertask1", historicActivityInstance1.getActivityId());
// TODO http://jira.codehaus.org/browse/ACT-1083
// assertNotNull(update2.getActivityInstanceId());
// HistoricActivityInstance historicActivityInstance2 = historyService.createHistoricActivityInstanceQuery().activityInstanceId(update2.getActivityInstanceId()).singleResult();
// assertEquals("usertask2", historicActivityInstance2.getActivityId());
//
// /*
// * This is OK! The variable is set on the root execution, on a execution never run through the activity, where the process instances
// * stands when calling the set Variable. But the ActivityId of this flow node is used. So the execution id's doesn't have to be equal.
// *
// * execution id: On which execution it was set
// * activity id: in which activity was the process instance when setting the variable
// */
// assertFalse(historicActivityInstance2.getExecutionId().equals(update2.getExecutionId()));
assertNotNull(update2.getActivityInstanceId());
HistoricActivityInstance historicActivityInstance2 = historyService.createHistoricActivityInstanceQuery().activityInstanceId(update2.getActivityInstanceId()).singleResult();
assertEquals("usertask2", historicActivityInstance2.getActivityId());
/*
* This is OK! The variable is set on the root execution, on a execution never run through the activity, where the process instances
* stands when calling the set Variable. But the ActivityId of this flow node is used. So the execution id's doesn't have to be equal.
*
* execution id: On which execution it was set
* activity id: in which activity was the process instance when setting the variable
*/
assertFalse(historicActivityInstance2.getExecutionId().equals(update2.getExecutionId()));
}
}
......@@ -1180,11 +1180,14 @@ public class FullHistoryTest extends ResourceActivitiTestCase {
List<HistoricDetail> updates = historyService.createHistoricDetailQuery().variableUpdates().list();
assertEquals(2, updates.size());
HistoricVariableUpdate update1 = (HistoricVariableUpdate) updates.get(0);
HistoricVariableUpdate update2 = (HistoricVariableUpdate) updates.get(1);
assertEquals("1", update1.getValue());
assertEquals("2", update2.getValue());
Map<String, HistoricVariableUpdate> updatesMap = new HashMap<String, HistoricVariableUpdate>();
HistoricVariableUpdate update = (HistoricVariableUpdate) updates.get(0);
updatesMap.put((String)update.getValue(), update);
update = (HistoricVariableUpdate) updates.get(1);
updatesMap.put((String)update.getValue(), update);
HistoricVariableUpdate update1 = updatesMap.get("1");
HistoricVariableUpdate update2 = updatesMap.get("2");
assertNotNull(update1.getActivityInstanceId());
assertNotNull(update1.getExecutionId());
......@@ -1192,17 +1195,17 @@ public class FullHistoryTest extends ResourceActivitiTestCase {
assertEquals(historicActivityInstance1.getExecutionId(), update1.getExecutionId());
assertEquals("usertask1", historicActivityInstance1.getActivityId());
// assertNotNull(update2.getActivityInstanceId());
// HistoricActivityInstance historicActivityInstance2 = historyService.createHistoricActivityInstanceQuery().activityInstanceId(update2.getActivityInstanceId()).singleResult();
// assertEquals("usertask2", historicActivityInstance2.getActivityId());
//
// /*
// * This is OK! The variable is set on the root execution, on a execution never run through the activity, where the process instances
// * stands when calling the set Variable. But the ActivityId of this flow node is used. So the execution id's doesn't have to be equal.
// *
// * execution id: On which execution it was set
// * activity id: in which activity was the process instance when setting the variable
// */
// assertFalse(historicActivityInstance2.getExecutionId().equals(update2.getExecutionId()));
assertNotNull(update2.getActivityInstanceId());
HistoricActivityInstance historicActivityInstance2 = historyService.createHistoricActivityInstanceQuery().activityInstanceId(update2.getActivityInstanceId()).singleResult();
assertEquals("usertask2", historicActivityInstance2.getActivityId());
/*
* This is OK! The variable is set on the root execution, on a execution never run through the activity, where the process instances
* stands when calling the set Variable. But the ActivityId of this flow node is used. So the execution id's doesn't have to be equal.
*
* execution id: On which execution it was set
* activity id: in which activity was the process instance when setting the variable
*/
assertFalse(historicActivityInstance2.getExecutionId().equals(update2.getExecutionId()));
}
}
<?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.StandaloneInMemProcessEngineConfiguration">
<!-- Database configurations -->
<property name="history" value="full" />
<property name="databaseSchemaUpdate" value="true" />
<property name="jdbcMaxActiveConnections" value="2" />
<property name="idBlockSize" value="3" />
<property name="idGeneratorDataSource" ref="idGeneratorDataSource" />
<!-- job executor configurations -->
<property name="jobExecutorActivate" value="false" />
</bean>
<bean name="idGeneratorDataSource" class="org.activiti.engine.test.db.IdGeneratorDataSource" />
</beans>
<?xml version="1.0" encoding="UTF-8"?>
<definitions id="definitions"
xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:activiti="http://activiti.org/bpmn"
targetNamespace="Examples">
<process id="idGeneratorDataSource">
<startEvent id="theStart" />
<sequenceFlow id="flow1" sourceRef="theStart" targetRef="javaService" />
<serviceTask id="javaService"
name="Java service invocation"
activiti:class="org.activiti.engine.test.db.IdGeneratorDataSourceDoNothing" />
<sequenceFlow id="flow2" sourceRef="javaService" targetRef="theEnd" />
<endEvent id="theEnd" />
</process>
</definitions>
\ No newline at end of file
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Mule</name>
<artifactId>activiti-mule</artifactId>
<name>Activiti - Mule</name>
<artifactId>activiti-mule</artifactId>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
</parent>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.6</version>
<configuration>
<workingDirectory>${project.build.directory}</workingDirectory>
<systemPropertyVariables>
<propertyName>mule.workingDirectory</propertyName>
<buildDirectory>${project.build.directory}</buildDirectory>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.6</version>
<configuration>
<workingDirectory>${project.build.directory}</workingDirectory>
<systemPropertyVariables>
<propertyName>mule.workingDirectory</propertyName>
<buildDirectory>${project.build.directory}</buildDirectory>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-cxf</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl104-over-slf4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>opensaml</groupId>
<artifactId>opensaml</artifactId>
</exclusion>
<exclusion>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
</exclusion>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml</artifactId>
</dependency>
<dependency>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
<classifier>lgpl</classifier>
</dependency>
<dependency>
<groupId>org.mule.tests</groupId>
<artifactId>mule-tests-functional</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl104-over-slf4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mule.transports</groupId>
<artifactId>mule-transport-vm</artifactId>
<version>${mule.version}</version>
</dependency>
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-scripting</artifactId>
<version>${mule.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-cxf</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl104-over-slf4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>opensaml</groupId>
<artifactId>opensaml</artifactId>
</exclusion>
<exclusion>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
</exclusion>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml</artifactId>
</dependency>
<dependency>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
<classifier>lgpl</classifier>
</dependency>
<dependency>
<groupId>org.mule.tests</groupId>
<artifactId>mule-tests-functional</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl104-over-slf4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.safehaus.jug</groupId>
<artifactId>jug</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mule.transports</groupId>
<artifactId>mule-transport-vm</artifactId>
<version>${mule.version}</version>
</dependency>
<dependency>
<groupId>org.mule.modules</groupId>
<artifactId>mule-module-scripting</artifactId>
<version>${mule.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>org.activiti.impl*,org.activiti.engine.impl*</excludePackageNames>
</configuration>
</plugin>
</plugins>
</reporting>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>org.activiti.impl*,org.activiti.engine.impl*</excludePackageNames>
</configuration>
</plugin>
</plugins>
</reporting>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<name>Activiti - OSGi</name>
<artifactId>activiti-osgi</artifactId>
<name>Activiti - OSGi</name>
<artifactId>activiti-osgi</artifactId>
<packaging>bundle</packaging>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
</parent>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>
<dependencies>
<dependency>
......@@ -47,40 +47,40 @@
</dependency>
</dependencies>
<properties>
<activiti.osgi.activator>
org.activiti.osgi.Activator
</activiti.osgi.activator>
<activiti.osgi.import.pkg>
org.apache.felix.fileinstall*;resolution:=optional,*
</activiti.osgi.import.pkg>
<activiti.artifact>
org.activiti.osgi
</activiti.artifact>
</properties>
<properties>
<activiti.osgi.activator>
org.activiti.osgi.Activator
</activiti.osgi.activator>
<activiti.osgi.import.pkg>
org.apache.felix.fileinstall*;resolution:=optional,*
</activiti.osgi.import.pkg>
<activiti.artifact>
org.activiti.osgi
</activiti.artifact>
</properties>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Spring</name>
<artifactId>activiti-spring</artifactId>
<name>Activiti - Spring</name>
<artifactId>activiti-spring</artifactId>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.11-SNAPSHOT</version>
</parent>
<dependencies>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
......@@ -29,14 +29,14 @@
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
</dependency>
<dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<artifactId>commons-lang</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
......@@ -49,10 +49,10 @@
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<scope>provided</scope>
</dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
......@@ -77,7 +77,7 @@
<artifactId>subethasmtp-wiser</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
<scope>test</scope>
......@@ -86,7 +86,7 @@
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
</dependency>
</dependencies>
</dependencies>
<profiles>
<profile>
......@@ -121,18 +121,18 @@
<profile>
<id>checkspring</id>
<build>
<plugins>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>copy-test-sources-from-engine</id>
<phase>generate-sources</phase>
<phase>generate-sources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<configuration>
<tasks>
<delete dir="src/test/java/org/activiti/engine/test"/>
<delete dir="src/test/resources/org/activiti/engine/test"/>
<delete dir="src/test/java/org/activiti/examples"/>
......@@ -145,9 +145,9 @@
<copy todir="src/test/resources" overwrite="true">
<fileset dir="../activiti-engine/src/test/resources" />
</copy>
</tasks>
</configuration>
</execution>
</tasks>
</configuration>
</execution>
<execution>
<id>delete-test-sources-after</id>
<phase>package</phase>
......@@ -165,19 +165,22 @@
</tasks>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemProperties>
<property><name>process.engine.initializer</name><value>org.activiti.spring.SpringProcessEngineInitializer</value></property>
<property>
<name>process.engine.initializer</name>
<value>org.activiti.spring.SpringProcessEngineInitializer</value>
</property>
</systemProperties>
<excludes>
<exclude>org/activiti/standalone/**</exclude>
<exclude>**/*TestCase.java</exclude>
<exclude>**/ActivitiRuleJunit4Test.java</exclude><!-- Can't run in Spring since ActivitiRule must be used different in Spring -->
<exclude>**/CompetingJobAcquisitionTest.java</exclude> <!-- http://jira.codehaus.org/browse/ACT-234 -->
<exclude>**/CompetingJobAcquisitionTest.java</exclude> <!-- http://jira.codehaus.org/browse/ACT-234 -->
<exclude>**/WSDLImporterTest.java</exclude> <!-- http://jira.codehaus.org/browse/ACT-315 -->
<exclude>**/JobExecutorTest.java</exclude> <!-- http://jira.codehaus.org/browse/ACT-427 -->
<exclude>**/HistoricTaskInstanceUpdateTest.java</exclude> <!-- http://jira.codehaus.org/browse/ACT-485 -->
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
......
......@@ -94,7 +94,7 @@
</plugin> -->
<!-- A simple Jetty test server at http://localhost:8080/activiti-webapp-explorer2 can be launched with the Maven goal jetty:run
and stopped with jetty:stop -->
and stopped with jetty:stop -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
......@@ -116,41 +116,41 @@
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.zeroturnaround
</groupId>
<artifactId>
jrebel-maven-plugin
</artifactId>
<versionRange>
[1.0.7,)
</versionRange>
<goals>
<goal>generate</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.zeroturnaround
</groupId>
<artifactId>
jrebel-maven-plugin
</artifactId>
<versionRange>
[1.0.7,)
</versionRange>
<goals>
<goal>generate</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
......@@ -177,8 +177,8 @@
<!-- Database -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
......@@ -194,7 +194,7 @@
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
</dependency>
......@@ -288,10 +288,10 @@
</dependency>
<!-- Testing -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Rest</name>
<artifactId>activiti-webapp-rest2</artifactId>
<packaging>war</packaging>
<name>Activiti - Rest</name>
<artifactId>activiti-webapp-rest2</artifactId>
<packaging>war</packaging>
<parent>
<groupId>org.activiti</groupId>
......@@ -13,10 +13,10 @@
<version>5.11-SNAPSHOT</version>
</parent>
<build>
<plugins>
<!-- A simple Jetty test server at http://localhost:8080/activiti-webapp-rest can be launched with the Maven goal jetty:run
and stopped with jetty:stop -->
<build>
<plugins>
<!-- A simple Jetty test server at http://localhost:8080/activiti-webapp-rest can be launched with the Maven goal jetty:run
and stopped with jetty:stop -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
......@@ -36,19 +36,19 @@
</webAppConfig>
</configuration>
</plugin>
</plugins>
</build>
</plugins>
</build>
<dependencies>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
......@@ -85,9 +85,9 @@
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
......
......@@ -16,40 +16,40 @@
<restlet.version>2.0.15</restlet.version>
<batik.version>1.7</batik.version>
<!-- OSGi bundles properties -->
<activiti.artifact/>
<activiti.osgi.import.activiti.version>version="[$(version;==;${activiti.osgi.version.clean}),$(version;=+;${activiti.osgi.version.clean}))"</activiti.osgi.import.activiti.version>
<activiti.osgi.import.strict.version>version="[$(version;===;${activiti.osgi.version.clean}),$(version;==+;${activiti.osgi.version.clean}))"</activiti.osgi.import.strict.version>
<activiti.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</activiti.osgi.import.default.version>
<activiti.osgi.import.defaults>
</activiti.osgi.import.defaults>
<activiti.osgi.import.before.defaults />
<activiti.osgi.import.additional />
<activiti.osgi.import.pkg>
org.activiti.*;${activiti.osgi.import.activiti.version},
${activiti.osgi.import.before.defaults},
${activiti.osgi.import.defaults},
${activiti.osgi.import.additional},
*
</activiti.osgi.import.pkg>
<activiti.osgi.activator />
<activiti.osgi.failok>false</activiti.osgi.failok>
<activiti.osgi.export>${activiti.osgi.export.pkg};${activiti.osgi.version};-noimport:=true</activiti.osgi.export>
<!--
<activiti.osgi.export.pkg>!*.impl;${activiti.artifact}*</activiti.osgi.export.pkg>
<activiti.osgi.private.pkg>${activiti.artifact}*.impl</activiti.osgi.private.pkg>
-->
<activiti.osgi.export.pkg>${activiti.artifact}*</activiti.osgi.export.pkg>
<activiti.osgi.private.pkg></activiti.osgi.private.pkg>
<activiti.osgi.version>version=${project.version}</activiti.osgi.version>
<activiti.osgi.split.pkg>-split-package:=first</activiti.osgi.split.pkg>
<activiti.osgi.import>${activiti.osgi.import.pkg}</activiti.osgi.import>
<activiti.osgi.dynamic />
<activiti.osgi.symbolic.name>${activiti.artifact}</activiti.osgi.symbolic.name>
<activiti.osgi.exclude.dependencies>false</activiti.osgi.exclude.dependencies>
<activiti.osgi.remove.headers>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</activiti.osgi.remove.headers>
<activiti.osgi.include.resource>{maven-resources}</activiti.osgi.include.resource>
<activiti.osgi.embed></activiti.osgi.embed>
<!-- OSGi bundles properties -->
<activiti.artifact/>
<activiti.osgi.import.activiti.version>version="[$(version;==;${activiti.osgi.version.clean}),$(version;=+;${activiti.osgi.version.clean}))"</activiti.osgi.import.activiti.version>
<activiti.osgi.import.strict.version>version="[$(version;===;${activiti.osgi.version.clean}),$(version;==+;${activiti.osgi.version.clean}))"</activiti.osgi.import.strict.version>
<activiti.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</activiti.osgi.import.default.version>
<activiti.osgi.import.defaults>
</activiti.osgi.import.defaults>
<activiti.osgi.import.before.defaults />
<activiti.osgi.import.additional />
<activiti.osgi.import.pkg>
org.activiti.*;${activiti.osgi.import.activiti.version},
${activiti.osgi.import.before.defaults},
${activiti.osgi.import.defaults},
${activiti.osgi.import.additional},
*
</activiti.osgi.import.pkg>
<activiti.osgi.activator />
<activiti.osgi.failok>false</activiti.osgi.failok>
<activiti.osgi.export>${activiti.osgi.export.pkg};${activiti.osgi.version};-noimport:=true</activiti.osgi.export>
<!--
<activiti.osgi.export.pkg>!*.impl;${activiti.artifact}*</activiti.osgi.export.pkg>
<activiti.osgi.private.pkg>${activiti.artifact}*.impl</activiti.osgi.private.pkg>
-->
<activiti.osgi.export.pkg>${activiti.artifact}*</activiti.osgi.export.pkg>
<activiti.osgi.private.pkg></activiti.osgi.private.pkg>
<activiti.osgi.version>version=${project.version}</activiti.osgi.version>
<activiti.osgi.split.pkg>-split-package:=first</activiti.osgi.split.pkg>
<activiti.osgi.import>${activiti.osgi.import.pkg}</activiti.osgi.import>
<activiti.osgi.dynamic />
<activiti.osgi.symbolic.name>${activiti.artifact}</activiti.osgi.symbolic.name>
<activiti.osgi.exclude.dependencies>false</activiti.osgi.exclude.dependencies>
<activiti.osgi.remove.headers>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</activiti.osgi.remove.headers>
<activiti.osgi.include.resource>{maven-resources}</activiti.osgi.include.resource>
<activiti.osgi.embed></activiti.osgi.embed>
</properties>
<dependencyManagement>
......@@ -147,7 +147,7 @@
<dependency>
<groupId>com.ibm.db2.jcc</groupId>
<artifactId>db2jcc4</artifactId>
<version>9.7</version>
<version>9.7</version>
<scope>test</scope>
</dependency>
<dependency>
......@@ -183,7 +183,7 @@
<artifactId>commons-email</artifactId>
<version>1.2</version>
</dependency>
<!-- Web service -->
<!-- Web service -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
......@@ -454,16 +454,16 @@
<classifier>lgpl</classifier>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.uuid</groupId>
<artifactId>java-uuid-generator</artifactId>
<version>3.1.2</version>
</dependency>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.uuid</groupId>
<artifactId>java-uuid-generator</artifactId>
<version>3.1.2</version>
</dependency>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>
</dependencies>
</dependencyManagement>
......@@ -506,7 +506,9 @@
</pluginRepository>
<pluginRepository>
<id>sonatype-snapshot-repo</id>
<snapshots><enabled>true</enabled></snapshots>
<snapshots>
<enabled>true</enabled>
</snapshots>
<url>https://repository.sonatype.org/content/repositories/apache-snapshots</url>
</pluginRepository>
</pluginRepositories>
......@@ -517,8 +519,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<source>1.6</source>
<target>1.6</target>
<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>
<optimize>true</optimize>
......@@ -601,9 +603,9 @@
<profiles>
<profile>
<id>nofail</id>
<properties>
<maven.test.failure.ignore>true</maven.test.failure.ignore>
</properties>
<properties>
<maven.test.failure.ignore>true</maven.test.failure.ignore>
</properties>
</profile>
<profile>
<id>deploy</id>
......@@ -654,12 +656,12 @@
<module>modules/activiti-spring</module>
</modules>
</profile>
<profile>
<profile>
<id>checkcdi</id>
<modules>
<module>modules/activiti-cdi</module>
</modules>
</profile>
<modules>
<module>modules/activiti-cdi</module>
</modules>
</profile>
<profile>
<id>upgradeDatabase</id>
<activation>
......@@ -691,9 +693,9 @@
<module>modules/activiti-webapp-explorer2</module>
<module>modules/activiti-cxf</module>
<module>modules/activiti-osgi</module>
<module>modules/activiti-camel</module>
<module>modules/activiti-camel</module>
<module>modules/activiti-mule</module>
<module>modules/activiti-cdi</module>
<module>modules/activiti-cdi</module>
</modules>
</profile>
<profile>
......@@ -791,14 +793,14 @@
<url>http://alfresco.com</url>
</developer>
<developer>
<name>Nick Burch</name>
<organization>Alfresco</organization>
<url>http://alfresco.com</url>
<name>Nick Burch</name>
<organization>Alfresco</organization>
<url>http://alfresco.com</url>
</developer>
<developer>
<name>Christian Stettler</name>
<organization>Mimacom</organization>
<url>http://mimacom.com</url>
<name>Christian Stettler</name>
<organization>Mimacom</organization>
<url>http://mimacom.com</url>
</developer>
</developers>
<issueManagement>
......@@ -810,8 +812,8 @@
<url>http://bamboo.ci.codehaus.org/browse/ACT</url>
</ciManagement>
<scm>
<connection>scm:svn:http://svn.codehaus.org/activiti/</connection>
<developerConnection>scm:svn:https://svn.codehaus.org/activiti/</developerConnection>
<connection>scm:svn:http://svn.codehaus.org/activiti/</connection>
<developerConnection>scm:svn:https://svn.codehaus.org/activiti/</developerConnection>
</scm>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti DB Clean</name>
......@@ -31,11 +31,11 @@
<artifactId>jtds</artifactId>
<version>1.2.4</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>8.4-701.jdbc4</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>8.4-701.jdbc4</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
......@@ -59,7 +59,9 @@
</pluginRepository>
<pluginRepository>
<id>sonatype-snapshot-repo</id>
<snapshots><enabled>true</enabled></snapshots>
<snapshots>
<enabled>true</enabled>
</snapshots>
<url>https://repository.sonatype.org/content/repositories/apache-snapshots</url>
</pluginRepository>
</pluginRepositories>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Upgrade Fetcher</name>
<groupId>org.activiti</groupId>
<artifactId>activiti-upgrade-fetcher</artifactId>
<version>5.11-SNAPSHOT</version>
<name>Activiti - Upgrade Fetcher</name>
<groupId>org.activiti</groupId>
<artifactId>activiti-upgrade-fetcher</artifactId>
<version>5.11-SNAPSHOT</version>
<dependencies>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-upgrade</artifactId>
......@@ -21,7 +21,9 @@
<repository>
<id>alfresco.snapshot.repo</id>
<url>https://maven.alfresco.com/nexus/content/repositories/activiti-snapshots/</url>
<snapshots><enabled>true</enabled></snapshots>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>alfresco</id>
......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Userguide</name>
......@@ -17,9 +17,9 @@
<repositories>
<repository>
<id>activiti-repo</id>
<url>https://maven.alfresco.com/nexus/content/repositories/activiti/</url>
</repository>
<id>activiti-repo</id>
<url>https://maven.alfresco.com/nexus/content/repositories/activiti/</url>
</repository>
</repositories>
<build>
......
......@@ -17,7 +17,7 @@
<para><literal>HistoricProcessInstance</literal>s containing information about current and past process instances.</para>
</listitem>
<listitem>
<para><literal>HistoricProcessVariable</literal>s containing information about the latest state a variable held in a past process instance.</para>
<para><literal>HistoricVariableInstance</literal>s containing the latest value of a process variable or task variable.</para>
</listitem>
<listitem>
<para><literal>HistoricActivityInstance</literal>s containing information about a single execution of an activity (node in the process).</para>
......@@ -42,7 +42,7 @@
<section id="historyQuery">
<title>Querying history</title>
<para>In the API, it's possible to query all 5 of the History entities. The HistoryService exposes the the methods
<literal>createHistoricProcessInstanceQuery()</literal>, <literal>createHistoricProcessVariableQuery()</literal>, <literal>createHistoricActivityInstanceQuery()</literal>,
<literal>createHistoricProcessInstanceQuery()</literal>, <literal>createHistoricVariableInstanceQuery()</literal>, <literal>createHistoricActivityInstanceQuery()</literal>,
<literal>createHistoricDetailQuery()</literal> and <literal>createHistoricTaskInstanceQuery()</literal>.
</para>
......@@ -60,11 +60,11 @@ historyService.createHistoricProcessInstanceQuery()
</para>
</section>
<section id="historyQueryProcessVariable">
<title>HistoricProcessVariableQuery</title>
<para>Get all <literal>HistoricProcessVariables</literal> from a finished process instance with id 'xxx' ordered by variable name.
<section id="historyQueryVariableInstance">
<title>HistoricVariableInstanceQuery</title>
<para>Get all <literal>HistoricVariableInstances</literal> from a finished process instance with id 'xxx' ordered by variable name.
<programlisting>
historyService.createHistoricProcessVariableQuery()
historyService.createHistoricVariableInstanceQuery()
.processInstanceId("XXX")
.orderByVariableName.desc()
.list();</programlisting>
......@@ -165,12 +165,11 @@ ProcessEngine processEngine = ProcessEngineConfiguration
<listitem><para><literal>none</literal>: skips all history archiving. This is the most performant for runtime
process execution, but no historical information will be available. </para></listitem>
<listitem><para><literal>activity</literal>: archives all process instances and activity instances.
No details will be archived</para></listitem>
<listitem><para><literal>variable</literal>: archives all process instances, activity instances and
variable values of finished process instances.</para></listitem>
At the end of the process instance, the latest values of the top level process instance variables
will be copied to historic variable instances. No details will be archived.</para></listitem>
<listitem><para><literal>audit</literal>: This is the default. It archives all process instances,
activity instances, variable values of finished process instances and all form properties that are submitted so that all user interaction
through forms is traceable and can be audited.</para></listitem>
activity instances, keeps variable values continuously in sync and all form properties that are submitted
so that all user interaction through forms is traceable and can be audited.</para></listitem>
<listitem><para><literal>full</literal>: This is the highest level of history archiving and hence the
slowest. This level stores all information as in the <literal>audit</literal> level
plus all other possible details, mostly this are process variable updates.</para></listitem>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册