11-23-2010 05:43 AM
11-23-2010 11:31 AM
<taskdef name="deploy-bar" classname="org.activiti.engine.impl.ant.DeployBarTask">
<classpath>
<pathelement path="files/demo"/>
<fileset dir="build">
<include name="activiti-cfg.jar"/>
</fileset>
<fileset dir="${activiti.home}/examples/activiti-engine-examples/libs-runtime" />
<fileset dir="${activiti.home}/examples/activiti-engine-examples/libs-test" />
</classpath>
</taskdef>
<deploy-bar file="${activiti.home}/setup/build/activiti-examples.bar" />
I get the impression I have to restart the server everytime I do this since all the processes are deployed in one go? So I cannot make a .bar for a particular process and deploy that while running?11-24-2010 02:27 AM
11-24-2010 05:19 AM
java.lang.NullPointerException
at org.activiti.engine.impl.form.JuelFormEngine.getFormTemplateString(Ju
elFormEngine.java:58)
My test BPMN is as follows, it's a mutated form of the example process. I have a form.form and started.form in the same taskforms folder. Does the formKey have to be an exact path, if so, what would it be? Is it relative to the .bar file, so it would need to be taskforms\form.form?
<?xml version="1.0" encoding="UTF-8" ?>
<definitions id="definitions"
targetNamespace="http://activiti.org/bpmn20"
xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti="http://activiti.org/bpmn">
<process id="testForm" name="Test forms">
<startEvent id="request" activiti:formKey="form.form" />
<sequenceFlow id="flow1" sourceRef="request" targetRef="handleRequest" />
<userTask id="handleRequest" name="Handle vacation request"
activiti:formKey="started.form" >
<documentation>
Started process with ${data}
</documentation>
<potentialOwner>
<resourceAssignmentExpression>
<formalExpression>management</formalExpression>
</resourceAssignmentExpression>
</potentialOwner>
</userTask>
<sequenceFlow id="flow2" sourceRef="handleRequest" targetRef="theEnd2" />
<endEvent id="theEnd2" />
</process>
</definitions>
11-24-2010 07:38 AM
11-24-2010 07:47 AM
11-24-2010 08:38 AM
C:\activiti-5.0.rc1\setup\deployer>ant -Dbarname=test -p
Buildfile: C:\activiti-5.0.rc1\setup\deployer\build.xml
Helps manage the deployment lifecycle of a workprocess.
Main targets:
build Make the business archive.
clean Delete the generated BAR file.
deploy Insert the process into Activiti.
skeleton create a skeleton directory to put your BPMN files and forms
It's intended that you skeleton -> build -> deploy.
<project name="BARDeployer" basedir=".">
<description>
Helps manage the deployment lifecycle of a workprocess.
</description>
<!– The project name. –>
<property name="barname" value=""/>
<!– Where your activiti is installed –>
<property name="activiti.home" location="../../"/>
<!– Where the forms and BPMN files are kept –>
<property name="formfolder" value="taskforms"/>
<taskdef name="deploy-bar" classname="org.activiti.engine.impl.ant.DeployBarTask">
<classpath>
<pathelement path="files/demo"/>
<fileset dir="../build">
<include name="activiti-cfg.jar"/>
</fileset>
<fileset dir="${activiti.home}/examples/activiti-engine-examples/libs-runtime" />
<fileset dir="${activiti.home}/examples/activiti-engine-examples/libs-test" />
</classpath>
</taskdef>
<target name="skeleton" description="create a skeleton directory to put your BPMN files and forms" >
<!– Create the skeleton directory(s) at –>
<mkdir dir="./${barname}/${formfolder}/"/>
</target>
<target name="build" description="Make the business archive.">
<zip destfile="./${barname}.bar">
<fileset dir="./${barname}/">
<include name="**/*.form"/>
<include name="**/*.bpmn20.xml"/>
</fileset>
</zip>
</target>
<target name="deploy" description="Insert the process into Activiti.">
<!– Activiti provided –>
<deploy-bar file="./${barname}.bar"/>
</target>
<target name="clean" description="Delete the generated BAR file." >
<delete file="./${barname}.bar"/>
</target>
</project>
All targets are executed like this:
cd deployer
ant -Dbarname=myworkflow <target>
You must provide the bar name everytime by using:-Dbarname=<barname>
C:\activiti-5.0.rc1\setup\deployer>ant -Dbarname=myworkflow skeleton
Buildfile: C:\activiti-5.0.rc1\setup\deployer\build.xml
skeleton:
[mkdir] Created dir: C:\activiti-5.0.rc1\setup\deployer\myworkflow\taskforms
BUILD SUCCESSFUL
Total time: 0 seconds
Then put a BPMN file and a form into the myworkflow\taskforms folder and we can build and deploy it in one go. Make sure you have the Activiti server started.
C:\activiti-5.0.rc1\setup\deployer>ant -Dbarname=myworkflow build deploy
Buildfile: C:\activiti-5.0.rc1\setup\deployer\build.xml
build:
[zip] Building zip: C:\activiti-5.0.rc1\setup\deployer\myworkflow.bar
deploy:
[deploy-bar] Initializing process engine default
[deploy-bar] 24-Nov-2010 13:33:12 org.activiti.engine.ProcessEngines initProcess
EnginFromResource
[deploy-bar] INFO: initializing process engine for resource jar:file:/C:/activit
i-5.0.rc1/setup/build/activiti-cfg.jar!/activiti.cfg.xml
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.impl.ProcessEngineImpl <in
it>
[deploy-bar] INFO: ProcessEngine default created
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.ProcessEngines initProcess
EnginFromResource
[deploy-bar] INFO: initialised process engine default
[deploy-bar] Starting to deploy 1 files
[deploy-bar] Handling file C:\activiti-5.0.rc1\setup\deployer\myworkflow.bar
[deploy-bar] deploying bar C:\activiti-5.0.rc1\setup\deployer\myworkflow.bar
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.impl.jobexecutor.JobAcquis
itionThread run
[deploy-bar] INFO: JobAcquisitionThread starting to acquire jobs
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.impl.bpmn.deployer.BpmnDep
loyer deploy
[deploy-bar] INFO: Processing resource taskforms/started.form
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.impl.bpmn.deployer.BpmnDep
loyer deploy
[deploy-bar] INFO: Processing resource taskforms/
[deploy-bar] 24-Nov-2010 13:33:13 org.activiti.engine.impl.bpmn.deployer.BpmnDep
loyer deploy
[deploy-bar] INFO: Processing resource taskforms/test.bpmn20.xml
[deploy-bar] 24-Nov-2010 13:33:14 org.activiti.engine.impl.bpmn.parser.BpmnParse
parseDefinitionsAttributes
[deploy-bar] INFO: XMLSchema currently not supported as typeLanguage
[deploy-bar] 24-Nov-2010 13:33:14 org.activiti.engine.impl.bpmn.parser.BpmnParse
parseDefinitionsAttributes
[deploy-bar] INFO: XPath currently not supported as typeLanguage
[deploy-bar] 24-Nov-2010 13:33:14 org.activiti.engine.impl.bpmn.deployer.BpmnDep
loyer deploy
[deploy-bar] INFO: Processing resource taskforms/form.form
BUILD SUCCESSFUL
Total time: 2 seconds
11-24-2010 08:51 AM
11-24-2010 09:20 AM
<h1>This is a test form</h1>
<p>Yada yada yada</p>
<input name="data" type="text" value="insert"/>
and started.form
<h1>Congratulations, me</h1>
<p>You inputted ${data}</p>
<p>You started your own activiti process with forms</p>
The BPMN is as follows:
<?xml version="1.0" encoding="UTF-8" ?>
<definitions id="definitions"
targetNamespace="http://activiti.org/bpmn20"
xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti="http://activiti.org/bpmn">
<process id="myworkflow" name="Test forms">
<startEvent id="request" activiti:formKey="taskforms/form.form" />
<sequenceFlow id="flow1" sourceRef="request" targetRef="handleRequest" />
<userTask id="handleRequest" name="Finish the test form"
activiti:formKey="taskforms/started.form" >
<documentation>
Started process with ${data}
</documentation>
<potentialOwner>
<resourceAssignmentExpression>
<formalExpression>management</formalExpression>
</resourceAssignmentExpression>
</potentialOwner>
</userTask>
<sequenceFlow id="flow2" sourceRef="handleRequest" targetRef="theEnd2" />
<endEvent id="theEnd2" />
</process>
</definitions>
If you found this helpful, please post your own suggestions and improvements.11-25-2010 07:51 PM
<?xml version="1.0" encoding="UTF-8" ?>
<definitions id="definitions"
targetNamespace="http://activiti.org/bpmn20"
xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti="http://activiti.org/bpmn">
<process id="simpleEmailProcess" name="E-Mail versenden">
<startEvent id="theStart" />
<sequenceFlow sourceRef="theStart" targetRef="sendMail" />
<serviceTask id="sendMail" activiti:type="mail">
<extensionElements>
<activiti:field name="to">
<activiti:string>test@example.com</activiti:string>
</activiti:field>
<activiti:field name="subject">
<activiti:string>Hello Miss Piggy!</activiti:string>
</activiti:field>
<activiti:field name="html">
<expression>
<![CDATA[
<html>
<body>
Hello Miss Piggy,<br/><br/>
Just saying hi!<br/><br/>
Kind regards,<br/>
Me.
</body>
</html>
]]>
</expression>
</activiti:field>
</extensionElements>
</serviceTask>
<sequenceFlow sourceRef="sendMail" targetRef="theEnd" />
<endEvent id="theEnd" />
</process>
</definitions>
actuser@actsrv:~/activiti-5.0.rc1/setup/deployer$ ant -Dbarname=myworkflow build deploy
Buildfile: build.xml
build:
[zip] Building zip: /home/actuser/activiti-5.0.rc1/setup/deployer/myworkflow.bar
deploy:
[deploy-bar] Initializing process engine default
[deploy-bar] Nov 26, 2010 2:23:31 AM org.activiti.engine.ProcessEngines initProcessEnginFromResource
[deploy-bar] INFO: initializing process engine for resource jar:file:/home/actuser/activiti-5.0.rc1/setup/build/activiti-cfg.jar!/activiti.cfg.xml
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.ProcessEngineImpl <init>
[deploy-bar] INFO: ProcessEngine default created
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.ProcessEngines initProcessEnginFromResource
[deploy-bar] INFO: initialised process engine default
[deploy-bar] Starting to deploy 1 files
[deploy-bar] Handling file /home/actuser/activiti-5.0.rc1/setup/deployer/myworkflow.bar
[deploy-bar] deploying bar /home/actuser/activiti-5.0.rc1/setup/deployer/myworkflow.bar
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.jobexecutor.JobAcquisitionThread run
[deploy-bar] INFO: JobAcquisitionThread starting to acquire jobs
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.bpmn.deployer.BpmnDeployer deploy
[deploy-bar] INFO: Processing resource taskforms/
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.bpmn.deployer.BpmnDeployer deploy
[deploy-bar] INFO: Processing resource taskforms/MyWorkflow.bpmn20.xml
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.bpmn.parser.BpmnParse parseDefinitionsAttributes
[deploy-bar] INFO: XMLSchema currently not supported as typeLanguage
[deploy-bar] Nov 26, 2010 2:23:33 AM org.activiti.engine.impl.bpmn.parser.BpmnParse parseDefinitionsAttributes
[deploy-bar] INFO: XPath currently not supported as typeLanguage
BUILD SUCCESSFUL
Total time: 3 seconds
actuser@actsrv:~/activiti-5.0.rc1/setup/deployer$
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.