- 浏览: 179926 次
- 性别:
- 来自: 广州
文章分类
最新评论
1、JBPM调用CompleteTask异常:
void completeTask(java.lang.String taskId)
Deletes this task, marks the related history task as completed.
void completeTask(java.lang.String taskId, java.util.Map<java.lang.String,?> variables)
Deletes this task and marks the related history task as completed.
void completeTask(java.lang.String taskId, java.lang.String outcome)
Deletes this task, marks the related history task as completed with the specified outcome.
void completeTask(java.lang.String taskId, java.lang.String outcome, java.util.Map<java.lang.String,?> variables)
Deletes this task, marks the related history task as completed with the specified outcome.
JBPM中completeTask有以上四种重载完成节点任务的方法,初学时调用该方法出错:No unnamed transitions were found for the task “**”;后来总结发现,当task中只有一个transition,而且没有name属性,则可以调用completeTask(java.lang.String taskId)和completeTask(java.lang.String taskId, java.util.Map<java.lang.String,?> variables)这两个方法,当有多个transition或者transition有name属性的时候调用完成任务的方法时则需要指定转向,即java.lang.String outcome参数,就是调用后面两个重载的方法,否则就会报上面这个异常;
2、JBPM中使用Hibernate Session的方法:
学习JBPM时,想将数据保存到自己的表中,不过不想使用jdbc,使用hibernate又不想独立再重新用,所以就考虑想用JBPM中的hibernate session,看到源码中sevice中都有session,不过没找到何处赋值的,后面还得多研究下,不过看到有用EnvironmentImpl.getCurrent().get(XXX.class)的方法,而且有个DbSession的类中有hibernate的session变量,所以尝试EnvironmentImpl.getCurrent().get(DbSession.class)获取,不过报错,EnvironmentImpl.getCurrent()是空值,之后发现下面的方法:
EnvironmentImpl environment = ((EnvironmentFactory) processEngine).openEnvironment(); //获取JBPM的环境
DbSession session = environment.get(DbSession.class);
此处注意需要自己处理事务,这个地方被困扰了好久,显示操作但是没有数据,需要手动的去控制事务。
有了这个environment之后同样可以用这个方法也可以获得其他的一些类的实例,这样可以在在JBPM中可以通过environment获得各种服务和接口。
如:
IdentitySession identitySession = environment.get(IdentitySession.class);
void completeTask(java.lang.String taskId)
Deletes this task, marks the related history task as completed.
void completeTask(java.lang.String taskId, java.util.Map<java.lang.String,?> variables)
Deletes this task and marks the related history task as completed.
void completeTask(java.lang.String taskId, java.lang.String outcome)
Deletes this task, marks the related history task as completed with the specified outcome.
void completeTask(java.lang.String taskId, java.lang.String outcome, java.util.Map<java.lang.String,?> variables)
Deletes this task, marks the related history task as completed with the specified outcome.
JBPM中completeTask有以上四种重载完成节点任务的方法,初学时调用该方法出错:No unnamed transitions were found for the task “**”;后来总结发现,当task中只有一个transition,而且没有name属性,则可以调用completeTask(java.lang.String taskId)和completeTask(java.lang.String taskId, java.util.Map<java.lang.String,?> variables)这两个方法,当有多个transition或者transition有name属性的时候调用完成任务的方法时则需要指定转向,即java.lang.String outcome参数,就是调用后面两个重载的方法,否则就会报上面这个异常;
2、JBPM中使用Hibernate Session的方法:
学习JBPM时,想将数据保存到自己的表中,不过不想使用jdbc,使用hibernate又不想独立再重新用,所以就考虑想用JBPM中的hibernate session,看到源码中sevice中都有session,不过没找到何处赋值的,后面还得多研究下,不过看到有用EnvironmentImpl.getCurrent().get(XXX.class)的方法,而且有个DbSession的类中有hibernate的session变量,所以尝试EnvironmentImpl.getCurrent().get(DbSession.class)获取,不过报错,EnvironmentImpl.getCurrent()是空值,之后发现下面的方法:
EnvironmentImpl environment = ((EnvironmentFactory) processEngine).openEnvironment(); //获取JBPM的环境
DbSession session = environment.get(DbSession.class);
此处注意需要自己处理事务,这个地方被困扰了好久,显示操作但是没有数据,需要手动的去控制事务。
有了这个environment之后同样可以用这个方法也可以获得其他的一些类的实例,这样可以在在JBPM中可以通过environment获得各种服务和接口。
如:
IdentitySession identitySession = environment.get(IdentitySession.class);
发表评论
-
Eclipse中Hibernate Tools安装使用
2015-09-02 14:05 576eclipse->Help>Install Ne ... -
Excel保护破解
2015-08-12 15:56 727打开受保护的Excel表格,按“ALT”+“F11”键, ... -
在Web项目中配置Log4j
2014-02-19 21:29 8733在Web项目中配置Log4j 1. 动态的改 ... -
C3P0连接池详细配置
2014-02-19 21:17 734C3P0连接池详细配置 <c3p0-config ... -
转:js获取各种高度
2013-07-09 19:10 1060<script type="text/jav ... -
转:json的stringify方法作用
2013-07-04 00:14 1628可使用JSON.parse(str)将其转化为json对象 ... -
Sublime Text 2快捷键~
2013-06-30 23:19 986Ctrl+L 选择整行(按住-继续选择下行) Ctrl+ ... -
jquery表单验证-自定义及常用验证(转)
2013-04-04 23:14 1370<script type="text/java ... -
PL/SQL执行存储过程
2013-04-01 18:11 11481、PL/SQL中SQL窗口执行过程: BEGIN DBMS ... -
jboss、tomcat自定义classpath(转)
2013-04-01 14:16 4078现在的项目中自定义了很多共通的jar包,这些jar包如何导 ... -
EL表达式和JSTL标签(转)
2013-03-31 15:37 1407在JSP页面中,使用标签库代替传统的Java语言来实 ... -
EL表达式和JSTL标签(转)
2013-03-31 15:34 0在JSP页面中,使用标签 ... -
简单的导出excel
2013-03-25 16:29 1005response.setContentType("a ... -
JS中URL编码参数(转) --- 乱码经过编码两次得以解决
2013-03-17 14:01 4337网上有很多文字作品写 ... -
jquery autocomplete示例
2013-03-15 18:30 9742使用jquery的autocomplete插件~~,目前网上有 ... -
GreyBox官网~~
2013-03-01 17:36 1032http://orangoo.com/labs/GreyBox ... -
(转)SQL 优化原则
2013-02-28 10:29 747一、问题的提出 在应用系统开发初期,由于开发数据库数据比 ... -
修改tomcat项目的图标
2013-02-28 10:23 852部署在tomcat中的项目在运行的时候,地址栏都是那个标志的小 ... -
如何修改和查看tomcat内存大小
2013-02-28 10:06 1049为了解决tomcat在大进行 ... -
eclipse修改内存启动参数
2013-02-28 09:56 5061一般安装完eclipse之后,在安装目录下你应该可以看到有一个 ...
相关推荐
标题中的"spring+struts1+hibernate+jbpm实例"揭示了这是一个基于Java技术栈的Web应用程序开发实例,其中涉及四大核心技术:Spring、Struts1、Hibernate和JBPM。接下来,我们将深入探讨这些技术及其在实际项目中的...
开发者可以在Java代码中调用Jbpm的SessionFactory和Session接口,进行流程的启动、控制和查询。 - 使用Java的ServiceLocator或EntityManager进行持久化操作,如数据库交互。 6. **Hibernate集成** - Jbpm可以与...
3. 创建Struts2的Action类,调用Spring管理的服务层方法,处理业务逻辑。 4. 集成Hibernate,配置数据源、实体类和映射文件,实现数据的持久化。 5. 使用jbpm4的API来启动、查询和控制流程实例。 6. 实现权限控制和...
1. **配置Spring**:在Spring配置文件中,需要添加对JBPM的依赖,包括数据源、session工厂、流程引擎等。Spring的事务管理器可以协调各个服务间的事务一致性。 2. **集成Hibernate**:由于JBPM4.3本身是基于...
Struts2可以作为前端控制器,处理用户的请求,并调用Spring中的Service层方法来执行Jbpm流程。Hibernate则用于处理与Jbpm相关的数据库操作,例如存储流程定义、实例等信息。 具体到"ssh2Jbpm"这个压缩包文件,它...
2. **配置Struts**:在Struts的配置文件中定义Action,这些Action通常会调用jbpm的相关服务,如启动流程、查询任务等。 3. **整合Hibernate**:jbpm4.3版本可以与Hibernate结合,通过HibernateSession来管理数据库...
3. **启动流程**:通过Spring的业务接口,调用jBPM的API启动流程实例,分配任务给相应用户。 4. **任务处理**:用户通过Struts的Action完成任务,更新流程状态。 5. **流程监控**:使用jBPM提供的Web管理界面或...
在整合过程中,首先会介绍jbpm4.3的配置和使用,包括流程定义文件(BPMN)的创建、工作流引擎的初始化以及任务的管理和调度。jbpm允许开发者定义复杂的业务流程,并通过API进行控制,如启动流程实例、完成任务节点等...
在整合JBPM时,Spring可以用来配置和管理JBPM的数据源、工作流session工厂以及事务管理。通过Spring的bean配置,可以实现JBPM服务的自动装配,简化代码。 2. **Struts2整合**: Struts2作为前端控制器,处理用户的...
3. **流程实例启动**:通过SSH框架中的服务层,调用JBPM API启动流程实例,这将触发流程的第一个任务。 4. **任务处理**:流程中的任务会出现在用户的工作列表中,通过Struts处理用户的任务完成请求,更新流程状态。...
2. **配置事务处理**:修改`jbpm.tx.spring.cfg.xml`文件,将`standard-transaction-interceptor`改为`spring-transaction-interceptor`,并将`transaction`和`hibernate-session`设置为`current="true"`。...
在IT领域,业务流程管理(Business Process Management, BPM)是一个关键的实践领域,而jbpm则是Java社区中一个流行的开源BPM框架。本开发指南将深入探讨jbpm的核心概念、功能以及如何有效地利用它来构建和管理业务...
在SSH集成中,Spring主要负责管理和协调其他两个框架,例如配置和实例化Struts2的动作类,以及管理Hibernate的Session工厂。 **Hibernate** 是一款强大的对象关系映射(ORM,Object-Relational Mapping)框架,它...
- **MVC 推风格**:介绍了在 RESTful 应用中使用“推”风格的 MVC 设计模式的具体实现方法。 #### 三、使用 Seam-gen 快速起步 - **准备工作**:在开始使用 Seam-gen 之前,需要进行一系列的基础配置,包括环境...
- **finally**:在try-catch-finally语句块中使用,确保无论是否发生异常都会执行的代码块。 - **finalize**:对象被垃圾回收前调用的方法,已过时。 ##### Io流的层次结构 - 输入流:InputStream、Reader。 - 输出...
本书通过多个示例来阐述Seam框架的使用方法,涵盖了从简单注册表单到复杂的酒店预订系统,以及集成jBPM的工作流应用。每个示例都详细解释了代码结构和工作原理,帮助读者理解如何在实际项目中应用Seam框架。 - **...
- **在 RESTful 应用程序中使用“推”风格("push"-style)的 MVC**:介绍了如何在 RESTful 应用程序中使用“推”风格的 MVC。 ##### 1.11 在 JBoss 中用 JSF1.2RI 运行 Seam 的范例 这部分介绍了如何在 JBoss 中...
- **拦截**:对组件的方法调用进行拦截处理。 - **组件名字**:用于标识组件。 - **定义组件范围**:明确组件的作用域。 以上是 SEAM 中文开发指南的主要知识点概述,从基础入门到高级功能均有涉及,旨在帮助...
- 在方法调用前后插入额外的行为,如日志记录、安全性检查等。 - **组件名字**: - 组件的唯一标识符,用于在组件之间建立关联。 Seam 2.0中文文档覆盖了从基础入门到高级应用的各个方面,为开发者提供了全面的...