`
cucuchen520
  • 浏览: 73865 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

OSWorkflow2.8扩展源代码升级版(Version2.1)

阅读更多

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。

 

注意,在例子升级版中:
在mysql-jdbc.sql里面多一张名为os_doc的表。

另外又新增加了一张名为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);
修改为workflowService.doAction(wf, id, 0, action, un, title, content, opinion);
即可
大约在77行的位置

分享到:
评论
25 楼 sqrt 2012-09-16  
exploded文件部署到tomcat后,tomcat启动报错。tomcat版本为6.0
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/classes/applicationContext-jdbc.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/classes/applicationContext-jdbc.xml]
Caused by: java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/classes/applicationContext-jdbc.xml]
at org.springframework.web.context.support.ServletContextResource.getInputStream(ServletContextResource.java:99)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:297)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:101)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:389)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:324)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3972)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)

我把web.xml中的
  <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/classes/applicationContext-jdbc.xml
        </param-value>
    </context-param>去掉后依然会出现上面的问题
24 楼 caiyunlong 2011-09-06  
楼主,你能提供下用ibatis的方法吗?或者帮我写个思路。
23 楼 songmiao 2008-06-17  
再补充一些吧,方便楼主找到具体代码,我所说的这段代码在JDBCTemplatePropertySetDAOImpl类中,同样的问题还出现在其他一些地方一共十多处,请楼主解决一下吧。是否对程序的运行有影响我还没有试验过。但是这个问题好像不是什么逻辑问题,就是个类型转换问题。我特意用测试类试验了一下报
java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from int to Object 异常。
难道有什么别的说道?! 我就不知道了。如果改的话请说说应该怎么改。做个类型转换将提到的那个type变量转为一个封装类?或者什么别的。请楼主明示。
22 楼 songmiao 2008-06-17  
我在eclipse中部署后有eclipse提示的错误
比如:
case PropertySet.DATA:
Data data = (Data) value;
sql = "UPDATE " + tableName + " SET " + colData + " = ?, " + colItemType + " = ? " + " WHERE " + colGlobalKey + " = ? AND " + colItemKey + " = ?";
return this.getJdbcTemplate().update(sql, new Object[]{data.getBytes(), type, globalKey, key});

其中new Object[]{data.getBytes(), type, globalKey, key});这句中变量type是一个int类型的值不能作为一个Object加入到一个Object数组中吧!
21 楼 huayuanmeng 2008-05-20  
我发现原因了 在整合Spring hibernate3的过程中 如果我加上事务处理的话 <bean id="workflowService" parent="txProxyTemplate">
<property name="target">
<bean
class="com.opensymphony.workflow.service.WorkflowServiceImpl">
<property name="workflowDAO" ref="workflowDAO" />
<property name="configs"
ref="osworkflowConfiguration">
</property>
</bean>
</property>
</bean>

就报上面的错误,
如果去掉的话 就可以了
<bean id="workflowService"
class="com.opensymphony.workflow.service.WorkflowServiceImpl">
<property name="workflowDAO" ref="workflowDAO" />
<property name="configs"
ref="osworkflowConfiguration">
</property>
</bean>

谁知道是什么原因?难道大家都没有遇到过这样的问题吗?
20 楼 huayuanmeng 2008-05-15  
org.springframework.dao.InvalidDataAccessApiUsageException: deleted object would be re-saved by cascade (remove deleted object from associations): [com.opensymphony.workflow.spi.hibernate3.HibernateCurrentStep#43]; nested exception is org.hibernate.ObjectDeletedException: deleted object would be re-saved by cascade (remove deleted object from associations): [com.opensymphony.workflow.spi.hibernate3.HibernateCurrentStep#43]

在hibernate 和Spring
的整合中遇到 这样的错误 谁能帮我下 谢谢你们!
19 楼 huayuanmeng 2008-05-08  
在运行 我启动的工作流  的时候报错

javax.servlet.ServletException: SQL Exception in query: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?  AND a2.STATUS =  ?  )' at line 1
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.underway2_jsp._jspService(underway2_jsp.java:125)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.opensymphony.filter.EncodingFilter.doFilter(EncodingFilter.java:81)

18 楼 wangjian5748 2008-05-07  
刚刚调试spring+JDBC成功,还没调spring+hibernate
我在tomcat5.5下运行,按照帮主的数据源配置运行osuser找不到数据源,老是报url为null:(Cannot create JDBC driver of class '' for connect URL 'null'),不过我把数据源配置改为按tomcat5.5官方文档提供的方式就正确了,还有newdoc.jsp文件的代码有问题(46行):
错误:oFCKeditor.setBasePath("/components/fckeditor/");
正确:oFCKeditor.setBasePath("components/fckeditor/");
不管怎么样,谢谢帮主!!
17 楼 kjj 2008-05-05  
楼上的,注意,osworkflow hibernate版的数据库表与jdbc版的不同!
16 楼 PangSir 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)
15 楼 pipi666661 2008-04-26  
楼主
请教。。。。我在初始化一个工作流后,点击完成初稿有以下错误。。
不知怎么解决。
type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Evaluation error while running BSH function script: root cause: Unknown column 'GLOBAL_KEY' in 'where clause'
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.test_jsp._jspService(test_jsp.java:393)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.opensymphony.filter.EncodingFilter.doFilter(EncodingFilter.java:81)


root cause

com.opensymphony.workflow.WorkflowException: Evaluation error while running BSH function script: root cause: Unknown column 'GLOBAL_KEY' in 'where clause'
com.opensymphony.workflow.util.beanshell.BeanShellFunctionProvider.execute(BeanShellFunctionProvider.java:66)
com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.java:869)
com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:1042)
com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:567)
com.opensymphony.workflow.service.WorkflowServiceImpl.doAction(WorkflowServiceImpl.java:39)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
$Proxy2.doAction(Unknown Source)
org.apache.jsp.test_jsp._jspService(test_jsp.java:134)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.opensymphony.filter.EncodingFilter.doFilter(EncodingFilter.java:81)


root cause

com.opensymphony.module.propertyset.PropertyException: Unknown column 'GLOBAL_KEY' in 'where clause'
com.opensymphony.module.propertyset.database.JDBCPropertySet.setImpl(JDBCPropertySet.java:289)
com.opensymphony.module.propertyset.AbstractPropertySet.set(AbstractPropertySet.java:502)
com.opensymphony.module.propertyset.AbstractPropertySet.setString(AbstractPropertySet.java:300)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
bsh.Reflect.invokeMethod(Unknown Source)
bsh.Reflect.invokeObjectMethod(Unknown Source)
bsh.Name.invokeMethod(Unknown Source)
bsh.BSHMethodInvocation.eval(Unknown Source)
bsh.BSHPrimaryExpression.eval(Unknown Source)
bsh.Interpreter.eval(Unknown Source)
bsh.Interpreter.eval(Unknown Source)
bsh.Interpreter.eval(Unknown Source)
com.opensymphony.workflow.util.beanshell.BeanShellFunctionProvider.execute(BeanShellFunctionProvider.java:60)
com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.java:869)
com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:1042)
com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:567)
com.opensymphony.workflow.service.WorkflowServiceImpl.doAction(WorkflowServiceImpl.java:39)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
$Proxy2.doAction(Unknown Source)
org.apache.jsp.test_jsp._jspService(test_jsp.java:134)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.opensymphony.filter.EncodingFilter.doFilter(EncodingFilter.java:81)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
14 楼 kukujerry 2008-04-09  
试了,用不了啊,缺好几个包,怎么回事啊?
13 楼 sidubi 2008-04-02  
非常感谢楼主。。。。。。
12 楼 szlixg 2008-01-26  
11 楼 yanfeijun 2008-01-20  
请教一下高人,怎么得到某个用户能处理的流程列表?
10 楼 dapeng1525 2008-01-06  
OSUser去哪下啊?我不会下啊!
9 楼 sunchang_long 2008-01-04  
十分感谢,经常从网上搜寻问题答案,还第一次见到这么系统的说明。也是第一次把感谢写出来,谢谢。
8 楼 cucuchen520 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这个群组是可以操作的。
7 楼 jszhiyang 2007-10-23  
请教LZ
在项目中 我需要某个流程可以由两个角色或多个角色可以操作
在osworkflow中可以实现 ?实现的方法是??
6 楼 boogie 2007-10-23  
这么好的东东竟有这么多的隐藏票?!我投精华!

相关推荐

    OSWorkflow2.8扩展源代码升级(修改)版

    这个"OSWorkflow2.8扩展源代码升级(修改)版"很可能包含对原版OSWorkflow 2.8的改进和增强,使得它更适合特定的项目需求或者优化了某些功能。源代码的升级通常涉及到错误修复、新功能添加、性能优化等方面。 首先,...

    osworkflow2.8.jar_官方完全带example正式版

    **osworkflow2.8.jar** 是一个开源的工作流引擎,其官方正式版包含了完整的示例项目,方便开发者理解和使用。这个版本是2.8版,代表着该软件在发布时已经经过了多次迭代和优化,提供了稳定且功能丰富的服务。 **...

    流程引擎OSworkflow2.8资料(所有jar包,学习资料,api)

    总的来说,这个压缩包为开发者提供了一站式资源,使他们能够有效地利用OSWorkflow 2.8构建高效、可扩展的业务流程管理系统。通过深入学习和实践,你可以掌握如何利用这个强大的工具来优化你的应用程序的流程控制。

    OSWorkflow2.8 API文档

    OSWorkflow 2.8 API 文档

    osworkflow2.8基于Spring+Hibernate

    《osworkflow2.8在Spring+Hibernate环境中的整合应用详解》 osworkflow是一款开源的工作流引擎,它提供了灵活的工作流程定义和执行管理功能。在Java应用中,osworkflow常常与Spring和Hibernate这两个主流的框架结合...

    OSWorkFlow2.8讲解PPT课件

    讲解JAVA开源工作流框架OSWorkFlow2.8的课件

    osworkflow2.8

    这个"osworkflow2.8"版本是OSWorkflow的一个特定发行版,包含了一整套用于设计、执行和管理工作流程的工具和资源。下面我们将深入探讨这个工作流引擎的关键特性和使用方法。 1. **工作流引擎概念** 工作流引擎是...

    osworkflow2.8.pdf

    ### OSWorkflow 2.8 知识点概览 #### 一、OSWorkflow 简介与特性 **OSWorkflow** 是一款灵活的工作流管理工具,适用于需要高度定制化流程的应用场景。它与大多数商用或开源工作流软件的不同之处在于其高度的灵活性...

    osworkflow-2.8.0

    10. **源代码和依赖**:"src" 文件夹包含源代码,而 "lib" 文件夹则包含了项目运行所需的第三方库,这对于理解 OSworkflow 的内部机制和二次开发非常有帮助。 通过这些组件和特性,OSworkflow-2.8.0 提供了一套完整...

    OSWorkflow中文手册 2.8

    ### OSWorkflow中文手册 2.8 #### 一、引言与基础知识 **OSWorkflow** 是一个开源的工作流引擎,用于实现业务流程自动化。它基于Java语言开发,并且支持多种数据库,具有高度的灵活性和扩展性。本手册旨在提供详细...

    OSWorkflow-2.8.0

    5. **源代码**:可能包含了OSWorkflow的部分或全部源代码,这对于深入理解其工作原理和进行二次开发非常有帮助。 部署OSWorkflow到Tomcat通常涉及以下步骤: 1. **解压文件**:首先,你需要将osworkflow-2.8.0...

    画流程图的例子(源码)OsWorkFlow.rar

    OsWorkFlow的源码中包含了对这些XML配置的解析和执行逻辑,这为我们提供了极大的灵活性和可扩展性。 接下来,我们来看如何使用OsWorkFlow进行流程图的创建。首先,你需要定义一个XML文件,该文件描述了流程的结构。...

    osworkflow-2.8.0.7z

    osWorkflow 采用模型-视图-控制器(MVC)架构,使得流程定义与应用逻辑分离,提高代码的可维护性和可扩展性。它支持XML格式的流程定义,便于流程的创建和修改。 3. **流程定义** 在 osWorkflow 中,流程可以通过...

    Osworkflow 入门级例子

    Osworkflow 是一个开源的工作流引擎,它为应用程序提供了一种灵活的方式来管理业务流程。这个入门级的例子将带你了解 ...一旦掌握了基础,你就可以根据具体需求扩展 Osworkflow,构建出复杂而高效的工作流管理系统。

    目前osworkflow最新最全的资料合集

    1. **OSWorkflow 2.8.chm**: 这是osworkflow 2.8版本的官方帮助文档,以CHM(Compiled Help Manual)格式提供,包含了完整的API参考、示例代码和常见问题解答。通过阅读这份文档,开发者可以了解到osworkflow的核心...

    osworkflow指导文档 + 源码

    总结来说,osWorkflow 是一个强大的工作流解决方案,它的灵活性和可扩展性使其成为开发人员处理复杂业务流程的首选工具。通过深入学习 osWorkflow 的指导文档和源码,开发者能够更好地理解和定制工作流,从而提高...

    OSWorkflow中文手册V2.8

    这个中文手册V2.8是为帮助中国开发者更好地理解和使用OSWorkflow而编写的,提供了详细的指导和示例。 **1. 开始教程** 在开始使用OSWorkflow之前,了解必要的文件和配置是至关重要的。基础步骤通常包括获取...

Global site tag (gtag.js) - Google Analytics