- 浏览: 73865 次
- 性别:
-
文章分类
最新评论
-
sqrt:
exploded文件部署到tomcat后,tomcat启动报错 ...
OSWorkflow2.8扩展源代码升级版(Version2.1) -
zhaohongjian2006:
你好正在看你写的例子,请把lib发一份,谢谢了,qq邮箱:42 ...
注意:OSWorkflow2.8扩展源代码升级了! -
caiyunlong:
楼主,你能提供下用ibatis的方法吗?或者帮我写个思路。
OSWorkflow2.8扩展源代码升级版(Version2.1) -
fanfree:
很早就有了,和adobe的Flex 差不多
Laszlo4.0翻译计划开始啦!!! -
guojingxf:
期待中。。。
Laszlo4.0翻译计划开始啦!!!
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。
用户创建新工作流后,在点击"完成初稿"时,保存审批意见的功能在什么地方实现的?
好像保存文档标题字段有问题,把当前登录用户的用户名保存为了文档标题值了
找到了问题所在:
把test.jsp中的workflowService.doAction(wf, id, 0, action, title, un, content, opinion);
修改为workflowService.doAction(wf, id, 0, action, un, title, content, opinion);
即可
大约在77行的位置
- osworkflow_bundle2.rar (8.3 MB)
- 下载次数: 2177
- osworkflow_bundle_spring_hibernate_.rar (8.4 MB)
- 下载次数: 994
评论
严重: 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>去掉后依然会出现上面的问题
java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from int to Object 异常。
难道有什么别的说道?! 我就不知道了。如果改的话请说说应该怎么改。做个类型转换将提到的那个type变量转为一个封装类?或者什么别的。请楼主明示。
比如:
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数组中吧!
<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>
谁知道是什么原因?难道大家都没有遇到过这样的问题吗?
在hibernate 和Spring
的整合中遇到 这样的错误 谁能帮我下 谢谢你们!
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)
我在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/");
不管怎么样,谢谢帮主!!
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)
请教。。。。我在初始化一个工作流后,点击完成初稿有以下错误。。
不知怎么解决。
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.

<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这个群组是可以操作的。
在项目中 我需要某个流程可以由两个角色或多个角色可以操作
在osworkflow中可以实现 ?实现的方法是??
相关推荐
这个"OSWorkflow2.8扩展源代码升级(修改)版"很可能包含对原版OSWorkflow 2.8的改进和增强,使得它更适合特定的项目需求或者优化了某些功能。源代码的升级通常涉及到错误修复、新功能添加、性能优化等方面。 首先,...
**osworkflow2.8.jar** 是一个开源的工作流引擎,其官方正式版包含了完整的示例项目,方便开发者理解和使用。这个版本是2.8版,代表着该软件在发布时已经经过了多次迭代和优化,提供了稳定且功能丰富的服务。 **...
总的来说,这个压缩包为开发者提供了一站式资源,使他们能够有效地利用OSWorkflow 2.8构建高效、可扩展的业务流程管理系统。通过深入学习和实践,你可以掌握如何利用这个强大的工具来优化你的应用程序的流程控制。
OSWorkflow 2.8 API 文档
《osworkflow2.8在Spring+Hibernate环境中的整合应用详解》 osworkflow是一款开源的工作流引擎,它提供了灵活的工作流程定义和执行管理功能。在Java应用中,osworkflow常常与Spring和Hibernate这两个主流的框架结合...
讲解JAVA开源工作流框架OSWorkFlow2.8的课件
这个"osworkflow2.8"版本是OSWorkflow的一个特定发行版,包含了一整套用于设计、执行和管理工作流程的工具和资源。下面我们将深入探讨这个工作流引擎的关键特性和使用方法。 1. **工作流引擎概念** 工作流引擎是...
### OSWorkflow 2.8 知识点概览 #### 一、OSWorkflow 简介与特性 **OSWorkflow** 是一款灵活的工作流管理工具,适用于需要高度定制化流程的应用场景。它与大多数商用或开源工作流软件的不同之处在于其高度的灵活性...
10. **源代码和依赖**:"src" 文件夹包含源代码,而 "lib" 文件夹则包含了项目运行所需的第三方库,这对于理解 OSworkflow 的内部机制和二次开发非常有帮助。 通过这些组件和特性,OSworkflow-2.8.0 提供了一套完整...
### OSWorkflow中文手册 2.8 #### 一、引言与基础知识 **OSWorkflow** 是一个开源的工作流引擎,用于实现业务流程自动化。它基于Java语言开发,并且支持多种数据库,具有高度的灵活性和扩展性。本手册旨在提供详细...
5. **源代码**:可能包含了OSWorkflow的部分或全部源代码,这对于深入理解其工作原理和进行二次开发非常有帮助。 部署OSWorkflow到Tomcat通常涉及以下步骤: 1. **解压文件**:首先,你需要将osworkflow-2.8.0...
OsWorkFlow的源码中包含了对这些XML配置的解析和执行逻辑,这为我们提供了极大的灵活性和可扩展性。 接下来,我们来看如何使用OsWorkFlow进行流程图的创建。首先,你需要定义一个XML文件,该文件描述了流程的结构。...
osWorkflow 采用模型-视图-控制器(MVC)架构,使得流程定义与应用逻辑分离,提高代码的可维护性和可扩展性。它支持XML格式的流程定义,便于流程的创建和修改。 3. **流程定义** 在 osWorkflow 中,流程可以通过...
Osworkflow 是一个开源的工作流引擎,它为应用程序提供了一种灵活的方式来管理业务流程。这个入门级的例子将带你了解 ...一旦掌握了基础,你就可以根据具体需求扩展 Osworkflow,构建出复杂而高效的工作流管理系统。
1. **OSWorkflow 2.8.chm**: 这是osworkflow 2.8版本的官方帮助文档,以CHM(Compiled Help Manual)格式提供,包含了完整的API参考、示例代码和常见问题解答。通过阅读这份文档,开发者可以了解到osworkflow的核心...
总结来说,osWorkflow 是一个强大的工作流解决方案,它的灵活性和可扩展性使其成为开发人员处理复杂业务流程的首选工具。通过深入学习 osWorkflow 的指导文档和源码,开发者能够更好地理解和定制工作流,从而提高...
这个中文手册V2.8是为帮助中国开发者更好地理解和使用OSWorkflow而编写的,提供了详细的指导和示例。 **1. 开始教程** 在开始使用OSWorkflow之前,了解必要的文件和配置是至关重要的。基础步骤通常包括获取...