大家好
我配置好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那没有值了,这样我就不能分得出这一个工作流是谁的了,搞了两三天都不知怎搞!希望知道的朋友可以给我讲讲,没空详细讲也无所谓,也给个关键的指引吧!
我配置好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那没有值了,这样我就不能分得出这一个工作流是谁的了,搞了两三天都不知怎搞!希望知道的朋友可以给我讲讲,没空详细讲也无所谓,也给个关键的指引吧!
解决方案 »
- Data size bigger than max size for this type: 2669
- hibernate 并发控制问题
- 刚刚自学了SSH,谁推荐个小项目给我做下
- 请教一个系统优化问题
- JDBC联接mysql的问题!各位来帮帮忙,高分回报!!!!!!!
- 为何JB不能导入zip:///[C%|/oracle/ora81/jdbc/lib/classes12.zip]包
- Root exception is java.lang.ClassNotFoundException: com.ibm.websphere.naming.WsnInitialContextFactory
- 关于树的问题,请各位大虾帮忙,谢谢了!
- JB问题系列1:怎样升级JB8自带的Struts版本
- 谁有 电子版 mastering ejb 2e 多谢!!及学习EJB 集合什么实例学习比较快一点?
- 请问如何大批的将java文件转成utf-8编码啊,谢谢
- 用struts2验证框架,出了点问题,求助
[email protected]