大家好
    我配置好osworkflow的mysql持久化后可以正常运行了,只是还有点不明白的地方,想各位指点指点的。
    我的osworkflow.xml配置如下<persistence class="com.opensymphony.workflow.spi.jdbc.MySQLWorkflowStore"> <property key="datasource" value="jdbc/ce"/>
 <property key="entry.sequence" value="SELECT max(id)+1 FROM OS_WFENTRY"/>
   <property key="entry.sequence.increment" value="update os_wfentry set ID=ID limit 1"/>
   <property key="entry.sequence.retrieve" value="SELECT max(id)+1 FROM OS_WFENTRY"/>
 <property key="entry.table" value="OS_WFENTRY"/>
 <property key="entry.id" value="ID"/>
 <property key="entry.name" value="NAME"/>
 <property key="entry.state" value="STATE"/>
 <property key="step.sequence" value="SELECT max(ID)+1 FROM OS_STEPIDS"/>
                       
 <property key="step.sequence.increment" value="INSERT INTO OS_STEPIDS (ID) values (null)"/>
   <property key="step.sequence.retrieve"  value="SELECT max(ID) FROM OS_STEPIDS"/>                       
     
 <property key="history.table" value="OS_HISTORYSTEP"/>
 <property key="current.table" value="OS_CURRENTSTEP"/>
  <property key="current.caller" value="CALLER"/>
 <property key="historyPrev.table" value="OS_HISTORYSTEP_PREV"/>
 <property key="currentPrev.table" value="OS_CURRENTSTEP_PREV"/>
 <property key="step.id" value="ID"/>
 <property key="step.entryId" value="ENTRY_ID"/>
 <property key="step.stepId" value="STEP_ID"/>
 <property key="step.actionId" value="ACTION_ID"/>
 <property key="step.owner" value="OWNER"/>
 <property key="step.caller" value="CALLER"/>
 <property key="step.startDate" value="START_DATE"/>
 <property key="step.finishDate" value="FINISH_DATE"/>
 <property key="step.dueDate" value="DUE_DATE"/>
 <property key="step.status" value="STATUS"/>
 <property key="step.previousId" value="PREVIOUS_ID"/>
</persistence>        <factory class="com.opensymphony.workflow.loader.XMLWorkflowFactory">
        <property key="resource" value="workflows.xml" />
    </factory>
</osworkflow>在帮助文档级相关资料中都没有我写的第四第五行<property key="entry.sequence.increment" value="update os_wfentry set ID=ID limit 1"/>
 <property key="entry.sequence.retrieve" value="SELECT max(id)+1 FROM OS_WFENTRY"/>
这是我自己看了一点点源码加上去才能运行的。我看到源码中明明是有一个executeUpdate的,不知别人的为什么可以没有entry.sequence.increment这一个。
而且虽然能运行了,但是数据库里的数据不全,就如os_currentstep数据表了的ACTION_ID OWNER CALLER等字段都没有值
最让我郁闷的就是CALLER那没有值了,这样我就不能分得出这一个工作流是谁的了,搞了两三天都不知怎搞!希望知道的朋友可以给我讲讲,没空详细讲也无所谓,也给个关键的指引吧!