该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-08-26
最后修改:2010-06-07
2010/06/07更新,加入所有所需lib包。提供完整源代码下载! 请大家注意:最近有非常多的网友问我,osworkflow如何与现有系统集成,虽然我在文档中写得比较清楚,但是没有例子作参考还是显得比较抽象,于是我写了一个升级版的例子供大家参考和学习!!! 目前的例子是osworkflow2.8_bundle2,在osworkflow2.8_bundle的基础上新增了流程审批意见功能。 又请注意:mysql表结构hibernate版和jdbc版是不同的,在database目录里面的mysql-hibernate.sql(此表适用于hibernate or spring+hibernate)和mysql-jdbc.sql(此表适用于jdbc or springJdbcTemplate)分别为两种类型的sql script。
注意,在例子升级版中: 另外又新增加了一张名为os_doc_opinion的表。 本例子是官方例子的改良版,增加了绑定现有系统的功能,实现的存储方式是jdbcTemplate。 请务必先在默认方式(jdctTemplate)下面调试成功,再照猫画虎改为jdbc方式或者hibernate方式。 如果要改为hibernate方式,请自行增加名为os_doc和os_doc_opinion的表。 本附件版本为 IntelliJ IDEA ,如开发人员为eclipse,请自行建工程,再把源代码等导入即可。 有网友向我反应:spring+hibernate没有例子,调试起来非常困难,现在我把spring+hibernate版本的源代码也上传,有点不一样,诚如huayuanmeng网友所说:workflowService加上事务处理之后即会报错,这是osworkflow与spring的一个冲突,目前解决的办法只好去掉事务,详见huayuanmeng评论,如果大家有更好的解决办法,请mail我,谢谢!另外特别感谢惜日福州榕基企业黄庆炬同事提出的改进意见! 下载时请按项目需要选择: osworkflow_bundle2.rar 适用于jdbc,springJdbcTemplate和单纯的hibernate3。 osworkflow_bundle_spring_hibernate_.rar 仅适用于spring+hibernate3。
所需JAR包
OSWorkflow自身
OSWorkflow自身(%osworkflow解压包%\):
osworkflow-2.8.0.jar
OSWorkflow核心引用包
OSWorkflow核心引用包(%osworkflow解压包%\lib\ core):
commons-logging.jar:必要,支持日志。
propertyset-1.4.jar:必要,支持propertyset的aggregate ,cached ,memory ,jdbc ,file ,javabeans ,map ,xml接口实现,并不支持hibernate3。
oscore-2.2.5.jar:必要,提供了一些工具等。
OSWorkflow可选包
OSWorkflow可选包(%osworkflow解压包%\lib\ optional):
bsf.jar:支持bsf,可选。
bsh-1.2b7.jar:支持beanshell,可选。
ehcache.jar:支持缓存,可选。
osuser-1.0-dev-2Feb05.jar:支持例子里面的用户和群组管理,在涉及到用户和群组的操作建议加上此包。
与Spring2联用所需包
spring2所需的包(%spring解压包%\dist) :
spring.jar(version:2.05)
与Hibernate3联用所需包
Hibernate3所需的包(%hibernate解压包%\lib) :
antlr.jar
cglib.jar
asm.jar
asm-attrs.jars
commons-collections.jar
hibernate3.jar
jta.jar
dom4j.jar
log4j.jar
如何发布?
1.请使用mysql5.0数据库,将database目录下面的mysql-jdbc.sql导入到数据库中,数据源的名称为jdbc/oswf。
2.里面有一个名称为exploded的文件夹,这个文件夹为webapp。请在tomcat或者别的服务器上面加载exploded文件夹。
3.exploded/WEB-INF/lib里面有全部的开发,经测试通过,无误。
4.src文件夹里面的程序不用编译就可以运行,如果编译也没有什么问题。但是将我写的src下面的程序删除是绝对运行不了的。
用户提出的bug
当前登录用户:newplayer,所在的组:writer
用户创建新工作流后,在点击"完成初稿"时,保存审批意见的功能在什么地方实现的? 好像保存文档标题字段有问题,把当前登录用户的用户名保存为了文档标题值了 找到了问题所在: 把test.jsp中的workflowService.doAction(wf, id, 0, action, title, un, content, opinion); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-03
新书什么时候出炉?
|
|
返回顶楼 | |
发表时间:2007-10-22
有没有eclipse下的工程啊?
|
|
返回顶楼 | |
发表时间:2007-10-23
这么好的东东竟有这么多的隐藏票?!我投精华!
|
|
返回顶楼 | |
发表时间:2007-10-23
请教LZ
在项目中 我需要某个流程可以由两个角色或多个角色可以操作 在osworkflow中可以实现 ?实现的方法是?? |
|
返回顶楼 | |
发表时间:2007-10-23
回楼上的,这个是可以很容易实现的,在action标签里作如下配置:
<restrict-to> <conditions> <condition type="class"> <arg name="class.name"> com.opensymphony.workflow.util.OSUserGroupCondition </arg> <arg name="group">dept_manager</arg> </condition> </conditions> </restrict-to> 以上配置说明dept_manager这个群组是可以操作的。 |
|
返回顶楼 | |
发表时间:2008-01-04
十分感谢,经常从网上搜寻问题答案,还第一次见到这么系统的说明。也是第一次把感谢写出来,谢谢。
|
|
返回顶楼 | |
发表时间:2008-04-09
试了,用不了啊,缺好几个包,怎么回事啊?
|
|
返回顶楼 | |
发表时间:2008-05-04
下载楼主的例子来运行~~
JDBC 是可以测试通过了~~ 可是HIBERNATE3的怎么都通不过~~ 起初是提示"workflowService"没有找到所以就要HIBERNATE3的那个配置文件里加了以下几段代码: <bean id="workflowDAO" class="com.opensymphony.workflow.dao.WorkflowDAOImpl"> <property name="dataSource" ref="dataSource"/> </bean> <bean id="workflowService" parent="txProxyTemplate"> <property name="target"> <bean class="com.opensymphony.workflow.service.WorkflowServiceImpl"> <property name="workflowDAO" ref="workflowDAO"/> </bean> </property> </bean> 虽然是能运行起来了,也能"拟稿"了,但是在运行到"完成拟稿"的这一步就出错了,报了以下错误~~ 2008-5-4 9:53:09 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet jsp threw exception com.opensymphony.module.propertyset.PropertyException: Unknown column 'GLOBAL_KEY' in 'where clause' at com.opensymphony.module.propertyset.database.JDBCPropertySet.setImpl(JDBCPropertySet.java:289) at com.opensymphony.module.propertyset.AbstractPropertySet.set(AbstractPropertySet.java:502) at com.opensymphony.module.propertyset.AbstractPropertySet.setString(AbstractPropertySet.java:300) |
|
返回顶楼 | |
发表时间:2008-05-05
楼上的,注意,osworkflow hibernate版的数据库表与jdbc版的不同!
|
|
返回顶楼 | |