Osworkflow基础教程:接口与操作详解

需积分: 20 7 下载量 90 浏览量 更新于2024-07-20 收藏 123KB DOC 举报
本篇"osworkflow简单教程"介绍了osworkflow这一工作流管理框架的基本使用方法和几个核心组件。osworkflow提供了多种实现`com.opensymphony.workflow.Workflow`接口的类,包括: 1. BasicWorkflow:这个类是基础版本,不提供事务支持,开发者需要通过外部持久层(如JDBC或Hibernate)自行管理事务。创建一个工作流实例时,需要传入关联当前请求用户的`username`,如`Workflow wf = new BasicWorkflow(username)`。 2. EJBWorkflow:这个版本利用EJB容器管理事务,无需手动处理。在部署时,需要在`ejb-jar.xml`中进行配置,创建实例时不需要传递`username`,因为EJB会自动进行验证。 3. OfbizWorkflow:与BasicWorkflow类似,但在需要事务支持的地方,会通过Ofbiz的`TransactionUtil`进行包装。创建实例的方式也与BasicWorkflow一致。 操作流程主要包括: - 创建新工作流实例:使用指定的用户名创建一个工作流实例,如`Workflow wf = new BasicWorkflow(username)`,并可能设置初始参数。 - 执行Action:对于需要执行的动作,例如修改文档状态,先获取用户输入(如`docTitle`),然后根据工作流ID调用`wf.doAction(id, 1, inputs)`。 - 查询工作流状态:osworkflow并非所有存储方式都支持查询功能,只有Hibernate、JDBC和内存存储支持。查询时,需要构造`WorkflowExpressionQuery`对象,并通过其方法执行查询。例如,如果使用Hibernate存储,不能执行混合类型的查询,涉及到历史和当前步骤上下文。 这篇教程为初学者提供了osworkflow的基础入门指导,包括如何配置事务处理、执行工作流操作以及注意事项,有助于快速理解和应用osworkflow进行业务流程自动化管理。