2

私はJBPMを初めて使用します。私はjbpm4.4を使用しています。これは私の基本的なサンプルコードです:

    ProcessEngine processEngine = new Configuration()
           .buildProcessEngine();
      NewDeployment deployment=processEngine.getRepositoryService().createDeployment().addResourceFromClasspath("com/pardis/jpdl/test.jpdl.xml");
      String deploymentId = deployment.deploy();
      Map<String,Object> variables = new HashMap<String,Object>();
      variables.put("customer", "John Doe");
      variables.put("type", "Accident");
      variables.put("amount", new Float(763.74));
      ProcessInstance processInstance = processEngine.getExecutionService().startProcessInstanceByKey("iran",variables,"doops");
processEngine.getExecutionService().signalExecutionById(processInstance.getId());

これは私のプロセス定義です:

<?xml version="1.0" encoding="UTF-8"?>

<process key="iran" name="test" xmlns="http://jbpm.org/4.4/jpdl">
   <start g="388,85,48,48" name="start1">
      <transition g="-49,-18" name="to state1" to="state1"/>
   </start>
   <end g="519,310,48,48" name="end1"/>
   <java class="test.TestAction" g="278,173,92,52" method="pr" name="java1">
      <arg> <object expr="#{type}"/> </arg>
      <arg> <object expr="#{customer}"/> </arg>
      <arg> <object expr="#{amount}"/> </arg>
      <transition name="to state2" to="state2" g="-49,-18"/>
   </java>
   <state g="89,151,92,52" name="state1">
      <transition g="-45,-18" name="to java1" to="java1"/>
   </state>
   <state name="state2" g="500,205,92,52">
      <transition name="to end1" to="end1" g="-42,-18"/>
   </state>
</process>

それについて質問があります:

  1. プロセスの実行が何らかの状態で停止したと仮定すると、どうすれば実行を永続化して再開できますか? 複数のユーザーに対してプロセスを実行し、実行を追跡したいと考えています。

JBPMのドキュメントは非常に貧弱だと思います! 私に役立つリソースを提案していただけますか?前もって感謝します

4

1 に答える 1

0

jbpm 4.x のドキュメントがスリムであることに同意しなければなりません。{情報が役に立たない場合は、事前にお詫び申し上げます。まだ自分でコツをつかんでいます}

始めるのに少し時間がかかりました。編集:このブログは、始めるのに非常に役立ちました。永続性に関する限り、始めるのはそれほど大雑把ではありません。jbpm.hibernate.cgf.xml ファイルを指定する必要があります。

構成に慣れる前に hibernate を使用したことがある場合。そうでない場合、これは MySQL DB に接続するテスト休止状態構成ファイルの抜粋です。

<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/MySQL</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">password</property>
于 2010-11-02T09:15:10.523 に答える