笔者以前用的jbpm3.1.2。。。
使用jbpm的hibernate自己链接数据库,修改hibernate.cfg.xml数据库链接部分
- <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
- <property name="hibernate.connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
- <property name="hibernate.connection.url">jdbc:jtds:sqlserver://localhost:1433/bizfocus52;user=sa;password=sa</property>
- <property name="hibernate.connection.username">sa</property>
- <property name="hibernate.connection.password">sa</property>
放在WEB-INF下的classes中。。。
然后将jbpm的jar和jbpm所依赖的jar文件拷到你的工程的lib下面。。
就可以用jbpm了。。。
如果你想用jbpm的time服务。。。那么需要在web.xml中添加如下的配置
- <servlet>
- <servlet-name>JbpmThreadsServlet</servlet-name>
- <servlet-class>org.jbpm.web.JbpmThreadsServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>JbpmThreadsServlet</servlet-name>
- <url-pattern>/threads</url-pattern>
- </servlet-mapping>
现在,升级到3.2.3
同样把hibernate.cfg.xml做一些修改。。。(注意:两个版本的所引用的mapping文件不一样,先删除以前的,然后修改新的)
放在classpath下面。。。
同时把jbpm.cfg.xml也放在classpath中。。
把jbpm的jar文件jpdl文件放在lib中。。一切没有问题。。
其实后面才是我想要说的。。
关于jbpm的提供的源码jpdl。。。
里面没有带build.xml文件。。。自己建立了一个。。。
用ant一下。发现少了包(commons-fileupload-1.0.jar和jackrabbit-core-1.3.3.jar)
注:jackrabbit-core-1.4.6.jar这个去替换jackrabbit-core-1.3.3.jar报错。。看来jackrabbit-core-1.3.3.jar是兼容3.3.2的jbpm。。
另外。。感觉3.1.2和3.2.3所用的jdk的版本不一样。。
3.2.3中。。。
- package org.jbpm.jpdl.el.impl;
- import java.lang.reflect.InvocationTargetException;
- import java.lang.reflect.Method;
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
- public class BeanMethod {
- Method method;
-
- public BeanMethod(Method method) {
- this.method = method;
- }
- public Object invoke(Object object) throws InvocationTargetException, IllegalArgumentException, IllegalAccessException {
- log.debug("invoking expression method '"+method.getName()+"'");
- return method.invoke(object,null);
- }
-
- private static Log log = LogFactory.getLog(BeanMethod.class);
- }
第19行代码:return method.invoke(object,null);
编译不能通过。。
第19行代码:return method.invoke(object);
编译通过。。。
另外关于3.2.3的time服务,是否需要配置servlet。。尚未试验。。大家可以试试。。
另外:有个问题好像是jbpm的bug。。。
用当前任务实例,取上个任务节点(同一个流程实例中)的用户(actor-id),总是找不到。。。
tasks.getPreviousActorId();
获取的是null。。。。我觉得是jbpm的一个bug
分享到:
相关推荐
5. 将修改后的流程定义发布到jbpm-console.war中的系统。 6. 启动服务器目录下的JBoss实例,通过Web控制台监控和管理流程实例。 总的来说,jBPM-jPDL-suite-3.2.3提供了一套完整的工具集,使开发者能够轻松地定义、...
- 将`jbpm-jpdl-suite-3.2.3/designer/eclipse/plugins`目录下的文件及文件夹复制到一个指定的目录,例如`D:\Genuitec\MyPlugins\jbpm-jpdl-designer-3.1.5`。 - 修改`CreatePluginsConfig.java`中的路径为`"D:\\...
从给定的文件信息中可以提取到一系列与配置Eclipse集成开发环境(IDE)以进行jBPM开发有关的知识点。jBPM是一个开源的业务流程管理套件(Business Process Management Suite, BPM Suite),它可以帮助开发者实现业务...
3.1.2 多起点 27 3.2路由模型 28 3.2.1基本路由 28 3.2.2分支路由 29 3.2.3聚合路由 30 3.2.4循环路由 31 3.2.5嵌套路由 32 3.3 激活模型 34 3.3.1流程激活 34 3.3.2 活动激活 34 3.4 EOS特有的模型 35 3.4.1任意...
3.1.2 解决方案 113 3.1.3 工作原理 113 3.2 用AspectJ注解声明aspect 115 3.2.1 问题 115 3.2.2 解决方案 115 3.2.3 工作原理 116 3.3 访问连接点信息 121 3.3.1 问题 121 3.3.2 解决方案 122 ...
3.1.2 解决方案 113 3.1.3 工作原理 113 3.2 用AspectJ注解声明aspect 115 3.2.1 问题 115 3.2.2 解决方案 115 3.2.3 工作原理 116 3.3 访问连接点信息 121 3.3.1 问题 121 3.3.2 解决方案 122 ...
1.4. Seam 和jBPM:待办事项列表(todo list)示例..................................................................................................... 32 1.4.1. 理解代码....................................